在Java中要想对两个对象进行比较大小,需要实现Comparable接口或Comparator接口。String类型的值之所以可以比较大小(汉字根据ANSI值的大小进行比较),是因为String类实现了Comparable接口。如果要比较的对象没有实现Comparable接口或Comparator接口而直接比较会报 java.lang.ClassCastException类型转换异常。

两个对象进行比较方法一:实现Comparable接口

覆写compareTo方法

方法二:实现Comparator接口实现Comparator接口与Comparable接口有什么区别吗?

答:Comparable接口 是在要比较的对象类创建的时候就实现了,也就是在项目上线之前就设计好了,大多数时候是采用这种方法。但是,有的时候项目已经上线了,此时我们还要对某个类进行比较,而此时该类还没有实现Comparable接口,为了遵守软件开发中“对扩展开放,对修改关闭”的原则,我们可以再定义一个比较器类,实现Comparator接口,这样我们就不会破坏要比较的类的原有结构了。自定义比较器类

最后修改:2021 年 06 月 03 日 11 : 08 PM
如果觉得我的文章对你有用,请随意赞赏