java的treeset,javaset集合特点

  java的treeset,javaset集合特点

  

一、特点

1.元素是有序的。这里的顺序不是指存储和检索的顺序,而是按照一定的规则进行排序。具体的订购方式取决于施工方法。

 

  TreeSet():是无参数构造的,元素按照自然顺序排序,即从小到大。

  ESET (Comparator Comparator) 3360由参数构成,并根据指定的比较器进行排序。

  2.没有带索引的方法,所以不能用for循环,可以用增强型for循环或者迭代器。

  3.因为它是一个集合,所以它是一个不包含重复元素的集合。

  使用无参构造进行存储数据并遍历练习:

  class treeset demo { public static void main(string[]args){//Create object treesettingerts=new treeset integer();//注意:泛型中的引用类型要使用其包装类类型//来添加数据ts . add(10);//自动打包实现ts . add(8);ts . add(7);ts . add(5);ts . add(10);//因为Set集合不包含重复的元素,所以不显示此元素。//遍历方法一增强for(integer I : ts){ system . out . println(I);} system . out . println(-);//遍历方法二的iterator integerit=ts . iterator=ts . iterator();while(it . has next()){ system . out . println(it . next());} }}

二,补充

TreeSet集合实现了SortedSet接口,可以对集合中的元素进行自然排序,并且要求集合中的元素必须具有可比性。

 

  包com . wk CTO . chapter 05 . set;导入Java . util.comparator;导入Java . util . treeset;/** * TreeSet set *元素可以自然排序,元素必须具有可比性* 1)创建TreeSet集合时,通过构造方法指定一个Comparator Comparator * 2)如果没有指定Comparator Comparator,则所需类必须实现comparable接口* @ AuthorFrog.com * */public class test 03 { public static void main(string[]args){//1)创建TreeSet集合并存储Person对象。在构造方法中指定一个比较器Comparator,sort treeset Person treeset=new treeset(new Comparator Person(){//Override interface @ public int compare(Person 01,Person o2)的抽象方法{//指定一个比较规则return 01 . name.compare to(O2 . name);//名称升序} });//2)添加元素treeset.add (new person (Lisi ,18));treeSet.add(新人(菲菲,28));treeSet.add(新人(永,35));treeSet.add(新人( bin ,36));treeSet.add(新人(张,33));//3)直接打印system . out . println(treeSet);//4)根据已有的TreeSet创建新的TreeSet,TreeSet person TreeSet 22=new TreeSet(TreeSet);system . out . println(treeset 22);//5)使用TreeSet的无参数构造,不指定比较器Comparator,要求Person类实现Comparable接口TreeSet Person TreeSet 33=new TreeSet();treeSet 33 . addall(treeSet);system . out . println(treeset 33);}} TreeMap位于TreeSet集合的底部。向treeset集合添加元素实际上是将元素作为键添加到底层TreeMap,TreeSet集合实际上是底层TreeMap的键的集合。

  包com。wk CTO。第五章。设置;导入Java。util。比较器;导入Java。util。treeset/** * 注意: * 在合框架集合中, 是根据比较者/可比者的比较结果是否为0来判断是否为同一个对象* 如果比较仪的比较()方法/可比的比较()方法的返回值为0 就认为是同一个对象* @作者蛙课网* */公共类测试04 {公共静态void main(String[] args) {//创建合框架集合,存储人对象, 通过构造方法指定比较仪比较器,按年龄降序排序TreeSetPerson treeSet=new treeSet(new comparator Person(){ @ override public int compare(Person O1,Person O2){ return O2。年龄-O1。年龄;}});//当前合框架是根据年龄比较人大小的, 在添加人对象时, 如果年龄相同就认为是同一个对象treeSet.add(新人(‘李斯’,18));treeSet.add(新人(菲菲,18));treeSet.add(新人(张,18));treeSet.add(新人(永,18));系统。出去。println(treeset。size());//1系统。出去。println(treeSet);系统。出去。println(treeset。包含(新人(王,18));//true}}到此这篇关于爪哇必学基础合框架集合的文章就介绍到这了,更多相关爪哇树集集合内容请搜索盛行信息技术以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行它!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: