所以我的标题是我的问题...对对象进行排序的基本要求是什么? 以下是一些选择:
A。它们必须是基元的包装类(整数,双精度型等)
B。它们必须是可比的。
C。至少一个实例变量必须是原始变量。
D。它们必须是字符串
E。对象不是可排序的,只有基元是可排序的。
答案 0 :(得分:1)
B。可比的。
在java documentation for Comparable中进行快速搜索将显示:
此接口对实现该接口的每个类的对象强加了总体排序。该排序称为类的自然排序,该类的compareTo方法被称为其自然比较方法。
实现此接口的对象的列表(和数组)可以由Collections.sort(和Arrays.sort)自动排序。实现此接口的对象可以用作排序映射中的键或排序集中的元素,而无需指定比较器。
答案 1 :(得分:0)
在Java中有两种对对象进行排序的方法。它们应该是Comparable
(具有相同的类型!Integer
和String
都是可比较的,但是您不能只对包含两者的列表进行排序),或者您应该使用正确类型的显式Comparator
。