Java中HashSet、LinkedHashSet和TreeSet的使用
2017-03-15 20:11
302 查看
HashSet<String> hashSet = new HashSet<>(); hashSet.add("a"); hashSet.add("a"); hashSet.add("c"); hashSet.add("b"); hashSet.add("e"); System.out.println("添加顺序\n[a,c,b,e]"); System.out.println("HashSet\n" + hashSet); LinkedHashSet<String> linkedHashSet = new LinkedHashSet<>(); linkedHashSet.add("a"); linkedHashSet.add("a"); linkedHashSet.add("c"); linkedHashSet.add("b"); linkedHashSet.add("e"); System.out.println("LinkedHashSet\n" + linkedHashSet); TreeSet<String> treeSet = new TreeSet<>(); treeSet.add("a"); treeSet.add("a"); treeSet.add("c"); treeSet.add("b"); treeSet.add("e"); System.out.println("TreeSet默认构造器\n"+treeSet); TreeSet<String> treeSet2 = new TreeSet<>(new Comparator<String>() { @Override public int compare(String o1, String o2) { int result = o1.compareTo(o2); if(result > 0){ return -1; }else if(result < 0){ return 1; } return 0; } }); treeSet2.add("a"); treeSet2.add("a"); treeSet2.add("c"); treeSet2.add("b"); treeSet2.add("e"); System.out.println("TreeSet自定义Comparator构造器\n" + treeSet2); System.out.println(); System.out.println("TreeSet:"+treeSet); System.out.println("first():" + treeSet.first()); System.out.println("last():" + treeSet.last()); System.out.println("ceiling(\"d\") >= :" + treeSet.ceiling("d")); System.out.println("floor(\"d\") <= :" + treeSet.floor("d")); System.out.println("higher(\"d\") > :" + treeSet.higher("d")); System.out.println("lower(\"d\") < :" + treeSet.lower("d")); System.out.println("subSet(\"a\",\"b\") :" + treeSet.subSet("a","b")); System.out.println("subSet(\"a\",true,\"b\",true) :" + treeSet.subSet("a",true,"b",true)); System.out.println("tailSet(\"b\") :" + treeSet.tailSet("b")); System.out.println("tailSet(\"b\",false) :" + treeSet.tailSet("b",false)); System.out.println("获取并删除第一个pollFirst():"+treeSet.pollFirst()); System.out.println("获取并删除最后一个pollLast():" + treeSet.pollLast());
添加顺序
[a,c,b,e]
HashSet
[a, b, c, e]
LinkedHashSet
[a, c, b, e]
TreeSet默认构造器
[a, b, c, e]
TreeSet自定义Comparator构造器
[e, c, b, a]
TreeSet:[a, b, c, e]
first():a
last():e
ceiling("d") >= :e
floor("d") <= :c
higher("d") > :e
lower("d") < :c
subSet("a","b") :[a]
subSet("a",true,"b",true) :[a, b]
tailSet("b") :[b, c, e]
tailSet("b",false) :[c, e]
获取并删除第一个pollFirst():a
获取并删除最后一个pollLast():e
相关文章推荐
- java中HashSet、LinkedHashSet、TreeSet、ArrayList、ArrayDeque、LinkedList使用区别
- JAVA基础学习之String、StringBuffer、StringBuilder、基本数据类型的使用、整形进制转换、集合Collection、Vector、ArrayList、LinkedList、HashSet、TreeSet等(3)
- java基础(6)--java中HashSet、LinkedHashSet、TreeSet、ArrayList、ArrayDeque、LinkedList使用区别
- 【Java】HashSet、LinkedHashSet、TreeSet使用区别
- 【JAVA基础】HashSet、LinkedHashSet、TreeSet使用区别
- 【Java_集合框架Set】HashSet、LinkedHashSet、TreeSet使用区别
- java中关于ArrayList,LinkedList,HashSet,Vector,TreeSet的区别和使用
- 【JAVA集合】HashSet、LinkedHashSet、TreeSet
- Java中类Set的子类HashSet、TreeSet、LinkedHashSet的差异化比较
- java讲义(十)HashSet,LinkedHashSet,TreeSet,enumSet
- HashSet、LinkedHashSet、TreeSet使用区别
- HashSet、LinkedHashSet、TreeSet使用区别
- 集合框架(四)如何使用以及何时使用HashSet、LinkedHashSet或者TreeSet来存储元素
- 从头认识java-15.5 使用LinkedHashSet需要注意的地方
- HashSet,LinkedHashSet ,TreeSet使用区别
- 从头认识java-15.5 使用LinkedHashSet须要注意的地方
- Lesson_for_java_day13--java中的集合——Collection、List、ArrayList、LinkedList、Set、HashSet、TreeSet
- 【Java】常见的Set类型,HashSet、TreeSet、LinkedHashSet
- 初学Java,比较HashSet,LinkedHashSet,TreeSet,EnumSet(二十七)
- TreeSet 、HashSet 、LinkedHashSet 的使用