今天爱分享给大家带来ArrayList 如何实现插入的数据按自定义的方式有序存放?【面试题详解】,希望能够帮助到大家。
【参考答案】
实现 Comparable 比较接口,并实现 compareTo 方法。排序的方法,取决于 compareTo
方法中的比较定义的返回值,一般有 3 个返回值:1、-1、0 表示不同的比较结果。
程序示例:
class MyBean implements Comparable{ public int compareTo(Object obj){ if(! obj instanceof MyBean) throw new ClassCastException(); MyBean other = (MyBean) obj; return age > other.age?1:age== other.age?0:-1; } } class MyTreeSet { private ArrayList datas = new ArrayList(); public void add(Object obj){ for(int i=0;i