1.1arraylist.sort(Comparatorc)升序:sites.sort(Comparator.naturalOrder());**Comparator接口的naturalOrder()方法指定自然元素顺序(升序)排序。**降序:sites.sort(Comparator.reverseOrder());Comparator接口的reverseOrder()方法指定对元素进行倒序排序(降序)。1.2实现Comparable接口,重写compareTo()方法:例:对于Person对象,先按年龄升序排序,如果年龄相同,则按姓名升序排序ClassPersonimplementsComparable{}publicintcompareTo(Personp1){}类PersonclassPersonimplementsComparable{Stringname;年龄;publicPerson(Stringname,intage){this.name=name;这个。年龄=年龄;}@OverridepublicStringtoString(){返回"Person:name="+this.name+"age="+this.age;}//treeSet在添加元素时会多次调用该方法,使新填充的元素与已有元素进行对比,最终确定新添加元素的放置位置@OverridepublicintcompareTo(Personp1){//先按年龄升序排列,如果年龄相同,则按姓名升序排列if(this.age==p1.age){//字符串默认实现了compareTo方法returnthis.name.compareTo(p1.name);}else{//升序排列returnthis.age-p1.age;}}}test1.javapublicclasstest1{publicstaticvoidmain(String[]args){//TreeSet有序TreeSetset=newTreeSet<>();//初始化几个实例set.add(newPerson("A",14));set.add(新人("E",15));set.add(newPerson("F",12));set.add(新人("B",11));set.add(newPerson("G",17));set.add(新人("H",15));set.add(新人("A",10));set.add(新人("C",19));for(Personperson:set){System.out.println(person);}}}结果:1.3编写比较器的compare(Objecto1,Objecto2)方法使得实体类不需要继承Comparable