• day17 Java学习(Set集合)


    框架集合(HashSet存储字符串并遍历)

        Ser集合:无索引,不可以重复,无序(存取不一致)。

    实例:

            /*
             * Set集合无索引,不可以重复,无序(存取不一致)。
             */
            HashSet<String> list=new HashSet<>();    //创建HashSet对象
    //        boolean b1=list.add("a");
    //        boolean b2=list.add("a");              //当向set集合添加重复元素为false
            
            list.add("v"); 
            list.add("z"); 
            list.add("c"); 
            for (String string : list) {
                System.out.println(string);
            }
    遍历Set集合字符串

    框架集合(HashSet如何保证元素唯一性)

    1.HashSet原理

         * 我们使用Set集合都是需要去掉重复元素的。

     2. 将自定义类的对象存入HashSet去重复

          * 类中必须重写hashCode( ) 和equals( )方法。

    框架集合(LinkedHashSet)

       LinkedHashSet:底层是链表实现的,是Set集合中唯一一个能保证怎么存就怎么取的集合对象。

       因为是HashSet的子类,所以也是保证元素唯一的。

    /*
     *取除List集合中的重复元素 
     */
            public static void getSingle(List<String> list) {
            // 创建一个LinkedHashSet集合
            LinkedHashSet<String> list1 = new LinkedHashSet<>();
            // 将List集合中的所有元素添加到LinkedHashSet集合。
            list1.addAll(list);
            // 将List集合中的元素清除。
            list.clear();
            // 将LinkedHashSet集合中的所有元素重新添加到List集合。
            list.addAll(list1);
    
        }
    去除集合重复元素

    框架集合(TreeSet存储Integer类型元素并遍历)

        TreeSet集合是用来对象元素进行排序的,同样它也可以保证元素的唯一。

    public static void sort(ArrayList<String> list) {
            //创建TreeSet集合对象,本身具备比较功能,但是重复不会保留,所以我们用比较器      (匿名内部类)
             TreeSet<String> ts=new TreeSet<>(new Comparator<String>() {    
    
                @Override
                public int compare(String s1, String s2) {
                    // TODO 自动生成的方法存根
                    int num = s1.compareTo(s2);
                    return num == 0 ? 1 : num;
                } 
            });
            //2.将list集合中的元素添加到TreeSet集合中,对其排序,保留重复
             ts.addAll(list);
             // 3.清空list集合
             list.clear();
             // 4.将TreeSet集合中排好序的元素添加到list中
            list.addAll(ts);
            
        }
    对集合排序并保留重复元素
  • 相关阅读:
    Django项目实战之用户头像上传与访问
    ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
    《http权威指南》读书笔记13
    《http权威指南》读书笔记12
    《http权威指南》读书笔记11
    《http权威指南》读书笔记10
    《http权威指南》读书笔记9
    移动端帧动画抖动解决方案
    display: table-cell的实用应用
    《http权威指南》读书笔记8
  • 原文地址:https://www.cnblogs.com/feng0001/p/10934833.html
Copyright © 2020-2023  润新知