何时以及为什么我们必须实现Comparable接口?

时间:2009-08-03 05:12:31

标签: java collections

在哪种情况下我们必须实施Comparable接口?

2 个答案:

答案 0 :(得分:6)

当您希望能够比较2个对象并获得相等,小于或大于的结果时。

实施Comparable为您的对象提供compareTo方法。如果将它们添加到排序列表中,则会根据compareTo方法返回的内容自动对它们进行排序。

这很基本。我不知道还有什么可以补充。

答案 1 :(得分:0)

当你的类实现Comparable接口时,你来实现compareTo()方法,你可以清楚地告诉你的类的实例在这样的实例的有序列表中的位置。

实现有效的排序算法和有序集合并非易事。因此,当您希望类的对象具有自然顺序时,您可以执行此操作,因此您可以使用由Java提供的经验证的排序和依赖于顺序的算法和类,而不是实现您自己的类,例如使TreeSet的内容保持有序。插入/删除,或使用Collections.sort()。