我尝试按用户名字母排序列表视图,但这不起作用。 这是我的代码:
session.friends.sort(new Comparator<Friend>() {
@Override
public int compare(Friend friend, Friend info) {
// TODO Auto-generated method stub
return 0;
}
});
排序为friend.username
答案 0 :(得分:1)
这对我有用!
public void add(Friend object) {
friends.add(object);
Collections.sort(friends, new Comparator<Friend>() {
@Override
public int compare(Friend friend, Friend info) {
return friend.publicname.compareTo(info.publicname);
}
});
this.notifyDataSetChanged();
super.add(object);
}
答案 1 :(得分:0)
查看Comparator,Comparable和Collator。
要按字符串对对象进行排序,您可以使用:
session.friends.sort(new Comparator<Friend>() {
@Override
public int compare(Friend friend, Friend info) {
Collator collator = Collator.getInstance(Locale.getDefault());
return collator.compare(friend.username, info.username);
}
});
答案 2 :(得分:0)
你不能把compare()的主体留空其他java不知道要比较什么试试这个 - &gt;
public int compare(Friend friend1, Friend friend2) {
String name1 = friend1.getName().toLowerCase();
String name2 = friend2.getName().toLowerCase();
// asc order
return name1.compareTo(name2);
// desc order
return name2.compareTo(name1);
}