zoukankan      html  css  js  c++  java
  • [Java数据结构]HashSet,LinkedHashSet,TreeeSet

    Java中Set表示一个不包括重复元素的集合,它有HashSet,LinkedHashSet,TreeeSet三种常用实现。

    HashSet是Set的最常用实现,它常被用来清除重复元素。

    例程:

            Set<String> filterSet=new HashSet<String>();
            
            filterSet.add("b");
            filterSet.add("b");
            filterSet.add("c");
            filterSet.add("c");
            filterSet.add("a");
            filterSet.add("a");
            filterSet.add("aa");
            filterSet.add("1");
            filterSet.add("3");
            filterSet.add("s");
            
            for(String str:filterSet) {
                System.out.println(str);
            }

    输出:

    aa
    a
    1
    b
    c
    3
    s

    从上面我们可以看出,HashSet能清除掉重复元素,但不能保持插入顺序,也不会自动排序。

    LinkedHashSet不但能清除重复,而且能保持元素的插入顺序。

            Set<String> filterSortSet=new LinkedHashSet<String>();
            filterSortSet.add("d");
            filterSortSet.add("b");
            filterSortSet.add("c");
            filterSortSet.add("c");
            filterSortSet.add("a");
            filterSortSet.add("a");
            filterSortSet.add("1");
            filterSortSet.add("1");
            filterSortSet.add("3");
            filterSortSet.add("s");
            
            for(String str:filterSortSet) {
                System.out.println(str);
            }

    输出:

    d
    b
    c
    a
    1
    3
    s

    TreeSet也能清除重复,且内部自动排序。

    例程:

            Set<String> filterSortSet=new TreeSet<String>();
            filterSortSet.add("d");
            filterSortSet.add("b");
            filterSortSet.add("c");
            filterSortSet.add("c");
            filterSortSet.add("a");
            filterSortSet.add("a");
            filterSortSet.add("1");
            filterSortSet.add("1");
            filterSortSet.add("3");
            filterSortSet.add("s");
            
            for(String str:filterSortSet) {
                System.out.println(str);
            }

    输出:

    1
    3
    a
    b
    c
    d
    s

    --END-- 2019-12-24 09:38

  • 相关阅读:
    js reduce函数基本知识和应用
    maven打包命令
    js处理后端返回的不同文件的流
    SQL 优化过程
    触发器点滴
    查询数据库中所有包含某文本的存储过程、视图和函数的SQL
    SQL Server FOR XML PATH 语句的应用
    vue实现扫码枪监听
    ASP.NET网络编程中经常用到的27个函数集
    收集
  • 原文地址:https://www.cnblogs.com/heyang78/p/12089517.html
Copyright © 2011-2022 走看看