public int compareTo(Object o) {.....}是实现接口Comparable后复写compareTo方法static class compareToStudent implements Comparator {....... }是定义一个类实现Comparator接口,复写compare方法,
Comparator 和 Comparable 相同的地方:
他们都是java的一个接口, 并且是用来对自定义的class比较大小的
两种方法各有优劣, 用Comparable 简单, 只要实现Comparable 接口的对象直接就成为一个可以比较的对象,
但是需要修改源代码, 用Comparator 的好处是不需要修改源代码, 而是另外实现一个比较器, 当某个自定义
的对象需要作比较的时候,把比较器和对象一起传递过去就可以比大小了, 并且在Comparator 里面用户可以自
己实现复杂的可以通用的逻辑,使其可以匹配一些比较简单的对象,那样就可以节省很多重复劳动了
|