什么时候一个类应该是可比的和/或比较的?我见过实现这两种功能的类。可比和比较器..这是什么意思?我为什么要用一个而不是另一个?
3 回答
隔江千里
TA贡献1906条经验 获得超10个赞
Comparable
Comparator
哔哔one
TA贡献1854条经验 获得超8个赞
在里面 同一班
(这往往是一种优势) 有可能 只有一个实现
(所以如果你想要两个不同的案例,你就不能用这个)
它通常在一个唯一的实例中(无论是在同一个类中还是在另一个地方)。 你,你们 列出每个实现的名称
用你想要处理的方式 您可以提供比较器 无法控制的类。
实现是 即使第一个对象为空,也是可用的。
Comparable<Object>
允许您在编译时在所有代码中使用它(如果需要,这是好的,如果不是,则使用不好的代码);您的实现必须处理对象,并按需要进行强制转换,但要以健壮的方式进行转换。 Comparable<Itself>
恰恰相反是非常严格的。
有趣的是,当子类本身变成子类时,子类也必须是可比较的,并且在这方面必须是健壮的(否则会破坏Liskov原则,并给出运行时错误)。
添加回答
举报
0/150
提交
取消