81,092
社区成员
发帖
与我相关
我的任务
分享
public static void main(String[] args) {
List<Number[]> list = new ArrayList<Number[]>();
Number[] n1 = {100,0.1};
Number[] n2 = {200,0.04};
Number[] n3 = {20,0.6};
Number[] n4 = {150,0.05};
list.add(n1);
list.add(n2);
list.add(n3);
list.add(n4);
Collections.sort(list, new Comparator<Number[]>(){
public int compare(Number[] n1, Number[] n2) {
double d = n1[0].intValue()*n1[1].doubleValue() - n2[0].intValue()*n2[1].doubleValue();
if(d>0){
return 1;
}else if(d<0){
return -1;
}else{
return 0;
}
}
});
System.out.println(list.get(0)[0]+":"+list.get(0)[1]);
System.out.println(list.get(1)[0]+":"+list.get(1)[1]);
System.out.println(list.get(2)[0]+":"+list.get(2)[1]);
System.out.println(list.get(3)[0]+":"+list.get(3)[1]);
}