需要截取list的一部分进行排序,然后将排序的那一部分放回原来的list里。
sublist之后,不要再对原list进行修改,直接修改sublist得到的子list即可,因为修改子list会直接影响原list
List<Conversation> tempConversations = null;
if (mConversations.size() > 5) {
tempConversations = mConversations.subList(5, mConversations.size());
}
// 对index为5以后的item进行排序
if (tempConversations != null && tempConversations.size() > 0) {
Collections.sort(tempConversations, new Comparator<Conversation>() {
@Override
public int compare(Conversation left, Conversation right) {
return (int)(right.getSendTime() - left.getSendTime());
}
});
adapter.notifyDataSetChanged();
}