我有类(JavaBean的,如果你想这样称呼它是)如何排序长的ArrayList <Object>通过对象的属性在Java中
class Tweet{
private millis; //number of millis since 1970
//other attributes and getters and setters, but i want to sort onlny by millis
public long getMillis() {
return millis;
}
}
比较器,可以大概看呈三角这样:
class TweetComparator implements Comparator {
@Override
public int compare(Tweet t1, Tweet t2) {
//something
//this doesn't work
//return t2.getMillis().compareTo(t1.getMillis());
return ??;//what should be here?
}
}
这将是节目
List<Tweet> tweets = new ArrayList<Tweet>();
tweets.add(...); //just fill the list
//i need newest (with hightest millis value first) so I probably need to call reverse order
Collection.reverse(tweets)
Collection.sort(tweets, new TweetComparator());
我发现一些参考here 和here。但我不知道如何完成我的代码。
当你想你的注释掉的代码发生了什么? –
@RohitJain写错误:can not compareTo(long)对原始类型long – user1097772