介绍
本篇文章给大家分享的是有关TreeSet中的排序方式有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
包练习; 公共类人实现可比{ 私人int id; 私人字符串名称; 公众人物(int id字符串名称){ 超级(); 这一点。id=id; this.name=名称; } 公共int getId () { 返回id; } 公共空间setId (int id) { 这一点。id=id; } 公共字符串getName () { 返回名称; } 公共空间setName(字符串名称){ this.name=名称; } 公共字符串toString () { 返回“人[id=?+身份证+“name=?+名称+“]”; } 公共int hashCode () { 最后一个int '=31; int结果=1; 结果+ id=' *结果; 结果=' *结果+ ((name==null), # 63;0:name.hashCode ()); 返回结果; } 公共布尔=(对象obj) { 如果(这==obj) 返回true; 如果(obj==null) 返回错误; 如果(getClass () !=obj.getClass ()) 返回错误; 人其他=(人)obj; 如果(id !=other.id) 返回错误; 如果(name==null) { 如果(other.name !=null) 返回错误; }else if (! name.equals (other.name)) 返回错误; 返回true; } 公共int compareTo(对象o) { 如果(o instanceof人){ 人阿p=(人); 返回this.name.compareTo (p.name); } 返回0; } }
包练习;//TreeSet下的自然排序和定制排序 进口java.util.Comparator; 进口java.util.Iterator; 进口java.util.Set; 进口java.util.TreeSet; 进口java.util.function.Function; 进口java.util.function.ToDoubleFunction; 进口java.util.function.ToIntFunction; 进口java.util.function.ToLongFunction; 进口org.junit.Test;//定制排序 公共类障碍{ @Test 公共空间unNature () { 比较器com=new比较器(){ 公共int比较(o1,对象o2) { 如果(o1 instanceof人,,o2 instanceof人){ 人p1=(人)o1群; 人p2=o2(人); 返回p1.getName () .compareTo (p2.getName ()); } 返回0; } }; 设置组=new TreeSet (com); set.add(新人(111年,“MM")); set.add(新人(222年,“DD")); set.add(新人(333年,“GG")); (对象obj:集){ System.out.println (obj); } }//自然排序 @Test 公共空间性质(){ 设置组=new TreeSet (); set.add (“aa"); set.add (“bb"); set.add (“ff"); set.add (“zz"); (对象obj:集){ System.out.println (obj); } } }
以上就是TreeSet中的排序方式有哪些,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。