int testing = key.compareTo(node.entry.key());
key是一个对象,entry是在同一文件夹中创建的类.java。我很难理解这行代码在做什么。
答案 0 :(得分:0)
compareTo方法是Comparable接口的唯一成员。这种方法有两种变体。第一种方法将此String与另一个Object进行比较,第二种方法按字典顺序比较两个字符串。
int compareTo(Object o)
或
int compareTo(String anotherString)
为什么我们需要compareTo()?
排序是应用程序开发的重要部分,您经常需要在系统中实现它。 Java排序是使用Java中的Comparator
和Comparable
实现的。由于我们在Collection
中存储java对象,因此当您在其上插入元素时,也会有某些Set和Map提供自动排序。 TreeSet
和TreeMap
。要实现排序,您需要覆盖compareTo(Object o)
方法或Comparable
类或compare(Object o1, Object o2)
类Comparator
方法。大多数类实现Comparable以实现自然顺序。例如,如果您正在编写Employee对象,您可能希望实现Comparable接口并覆盖compareTo()
方法,以根据ID将当前员工与其他员工进行比较。所以基本上你需要覆盖compareTo()
,因为你需要在ArrayList或任何其他Collection中对元素进行排序。
了解详情:http://javarevisited.blogspot.com/2011/11/how-to-override-compareto-method-in.html#ixzz2yc2rJ9Er