此接口的目的是进行排序
1、接口介绍public interface Comparable{ public int compareTo(T t); }
- 首先实现了这个接口的类必须实现compare(T t)方法,以后这个类就可以排序了(也就是可以直接用Collections.sort或Arrays.sort进行排序)
- 下面来个例子
@Lombok public class hello implements Comparable{ private String name; private int age; @Override public int compareTo(Person o) { //当然你类里面可以有很多属性,根据其他的属性进行判断 return this.age-o.age; } }
- 好啦,有了上面的类后,以后我们new 出来的对象可以放到一个对象数组,或者象放到ArraysList里面呀,然后调用Collections.sort(xxx)或Arrays.sort(xxx)进行排序
public interface Comparator{ int compare(T o1, T o2); boolean equals(Object obj); }
- 首先一个类:如果想要实现其可以不同对象可以进行比较的话,可以实现Comparator接口,覆写它的方法boolean equals(Object obj);可以实现类的大小比较。
package comparator; import java.util.Comparator; public class MyComparator implements Comparator{ @Override public int compare(hello h, hello h2) { return h1.getAge() - h2.getAge(); } }
- 比较原则:int compare(T o1, T o2) 是“比较o1和o2的大小”。返回“负数”,意味着“o1比o2小”;返回“零”,意味着“o1等于o2”;返回“正数”,意味着“o1大于o2”。



