一、应用场景:

当对自己定义的数据结构需要进行指定排序的时候,java中提供了两个接口一个Comparable和Comparator

 

comparable接口定义一个方法

public interface Comparable<T>{
      
public int compareTo(T o) }

 

comparator接口定义方法:有些类实现了comparator,但是没有实现equeals方式是因为equels方式是因为已经实现了equals方法

public interface Comparator<T>{
      int compare(T o1, T o2);
      boolean equals(Object obj);  
}

区别在于:实现了comparable的对象直接就可以成为一个可以比较的对象,不过得在类中进行方法定义,comparator对象外比较,不修改实体类