為什么這里用Collections的sort功能不能排序??題目是用泛型將擁有任意類型的數值的集合進行排序
2 回答

LEATH
TA貢獻1936條經驗 獲得超7個贊
只有實現Comparable接口的類才能實現排序功能,Number并無實現此接口,但是基本上Number的大多數子類都有實現此接口。不過你可以試試下面的方法,有點麻煩,不過應該可以
public
static
<T
extends
Number>
void
ascending(List<T> list) {
Collections.sort(list,
new
Comparator<T>() {
@Override
public
int
compare(T o1, T o2) {
double
d1 = o1.doubleValue();
double
d2 = o2.doubleValue();
return
d1 == d2 ?
0
: (d1 > d2 ?
1
: -
1
);
}
});
}
添加回答
舉報
0/150
提交
取消