做了Android开发这么久,做过很多次比较两个List<Object>是否相等,或者给List<Object>中元素排序的需求,这里简单总结下,作为“java基础”的第一篇blog。
一、给List<Object>中元素排序
其实给List<Object>中元素排序非常简单,一行代码就可以搞定
Collections.sort(list);
但是调用这一行代码之前,需要给一个排序规则。怎么给呢?
在list元素的类里实现comparable接口,并且完成compareTo方法。
@Override
public int compareTo(Advertisement o) {
return getSortOrder() - o.getSortOrder();
}
例如这个简单的实现。什么意思呢?这段代码的意思就是,比较两个对象,其实就是比较它们的SortOrder字段,谁的这个字段的值越大,这个对象就排在前面。
二、Comparable原理(待补充)
三、比较两个List<Object>是否相等(待补充)