I am sorting my array list int items by using "compareTo(String string);" this method comparing only string but not int values.How I can sort my array list based on integer value.
Here is my code :
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());
}
}
使您的AllSpeeds数据结构从getSpeed()
返回一个int
(或double
或其他数字getSpeed()
,或者对两个字符串使用Integer.parse(string)
,然后比较整数。
How about this
@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);
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.