81,114
社区成员
发帖
与我相关
我的任务
分享 Collections.sort(a, new Comparator() {
@Override
public int compare(Object o1, Object o2) {
String s1 = o1.toString();
String s2 = o2.toString();
return new Integer(s1.substring(0,s1.indexOf("|"))).compareTo(new Integer(s2.substring(0,s2
.indexOf("|"))));
}
});
// 前提,你的字符串里一定有|,且前面都是数字,否则出异常
public static void sort(List l,boolean order){
String str1 ;
String str2 ;
int int1;
int int2;
for (int i = 0 ; i < l.size() ; i++ ){
for (int j = 0 ;j <l.size() - i - 1; j++){
str1 = (String)l.get(j);
str2 = (String)l.get(j+1);
int1 = Integer.parseInt(str1.split(" ")[0]);
int2 = Integer.parseInt(str2.split(" ")[0]);
if (order == true){
if (int1 > int2){
l.remove(j+1);
l.remove(j);
l.add(j, str2);
l.add(j+1,str1);
}
}else{
if (int1 < int2){
l.remove(j+1);
l.remove(j);
l.add(j, str2);
l.add(j+1,str1);
}
}
}
}
}