现看一下该接口的定义:
public interface Comparable{
public int compareTo(Object o);
}
该接口定义类的自然顺序,实现该接口的类就可以按这种方式排序.
一般要求:
e1.equals((Object)e2)和e1.compareTo((Object)e2)==0具有相同的值,
这样的话我们就称自然顺序就和equals一致.
这个接口有什么用呢?
如果数据或者List中的元素实现了该接口的话,我们就可以调用Collections.sort或者Arrays方法给他们排序.
如果自然顺序和equals不一致的话,如果出现在Sorted Map和Set里面,
就会出现预想不到的逻辑错误,可能你调用add的时候添加不了,而集合里面确没有这个元素.具体的讨论要接口哈希表的应用.
博客介绍了Comparable接口,其定义了类的自然顺序,实现该接口的类可排序,一般要求自然顺序和equals一致。若数据或List元素实现该接口,可调用相关方法排序。若自然顺序和equals不一致,在Sorted Map和Set中会出现逻辑错误,还涉及哈希表应用。
6万+

被折叠的 条评论
为什么被折叠?



