JAVA comparable的使用方法与实例

comparable :是在你要排序的类中去实现comparable接口,也就是说你得在你要排序的类中先写一个方法用来声明你想让你类中的属性根据什么规则来排序。和Comparator不同,Comparator不用去修改你要排序的类中的代码。详细的我会在第二篇文章中来介绍Comparator的使用方法。

举个例子-----------------------------------------------------------

我们现在要创建一个TreeSet()来存储对象。当你存储的对象是String类型或者是Integer类型时,因为这些类型已经实现了comparable接口,所以输出这个集合时会按照这些类的重写的compareTo()方法来顺序输出,同理当你自己创建一个类时,想用TreeSet来存储这个对象,你得先重写comparable接口的compareTo()方法。

我们先创建一个person类,里面存有Integer 类型的 age;和String类型的name。

现在我们创建了一个preson类,存了名字和年龄,我们也重写了toString方法来获取输出对象的年龄(age)和名字(name)

代码中红色标的就是我们在person类(实现了comparable接口)里重写的compareTo方法,方法里是按照年龄优先排序的,如果年龄一样,我们再来比较姓名,如果两个都一样那么这个对象就不能存进TreeSet表里。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部