我使用“compareTo(String string);”对数组列表int项进行排序这个方法只比较字符串而不是int值。如何根据整数值对数组列表进行排序。
这是我的代码:
Collections.sort(mAllSpeedsArray, new AllSpeedsComparator());
public class AllSpeedsComparator implements Comparator<AllSpeeds> {
@Override
public int compare(AllSpeeds lhs, AllSpeeds rhs) {
// TODO Auto-generated method stub
return lhs.getSpeed().compareTo(rhs.getSpeed());
}
}
答案 0 :(得分:3)
让AllSpeeds数据结构从int
返回double
(或getSpeed()
或其他数字),或在两个字符串上使用Integer.parse(string)
然后进行比较整数。
答案 1 :(得分:2)
这个怎么样
@Override
public int compare(AllSpeeds lhs, AllSpeeds rhs) {
// TODO Auto-generated method stub
int a = Integer.parseInt(lhs.getSpeed());
int b = Integer.parseInt(rhs.getSpeed());
return a < b ? 1 : (a == b ? 0 : -1);
}