• 31、LinkedHashSet简介和练习


    LinkedHashSet简介

    通过LinkedHashSet的名字就可以看出,他的底层使用了链表的数据结构,因此LinkedHashSet的特点是读取元素的顺序跟存入元素的顺序是一致的,并且元素不能重复。

    练习

    1.生成10个1~20之间的整数,并且这些整数不能重复
    2.将List中的元素进行去重

    答案

    1.HashSet的特点就是里面的元素不会重复,因此将生成的随机数放入到HashSet中,直到HashSet的size为10即可

    package com.sutaoyu.list;
    
    import java.util.HashSet;
    import java.util.Random;
    
    public class list_test_16 {
        public static void main(String[] args) {
            HashSet<Integer> hs = new HashSet<>();
            
            //创建随机数对象
            Random r = new Random();
            
            while(hs.size() < 10) {
                //生成1到20的随机数
                int num = r.nextInt(20) + 1;
                hs.add(num);
            }
            
            for(Integer integer : hs) {
                System.out.println(integer);
            }
            
        }
    }

    2.利用LinkedHashSet存取顺序一致和不能存储重复元素的特性来完成

    package com.sutaoyu.list;
    
    import java.util.ArrayList;
    import java.util.LinkedHashSet;
    
    public class list_test_17 {
        public static void main(String[] args) {
            ArrayList<String> list = new ArrayList();
            list.add("a");
            list.add("a");
            list.add("a");
            list.add("b");
            list.add("b");
            list.add("b");
            list.add("c");
            list.add("c");
            list.add("c");
            
            System.out.println(list);
            System.out.println("去除重复后:");
            
            LinkedHashSet<String> lhs = new LinkedHashSet<>();
            //将list集合中的所有元素添加到lhs
            lhs.addAll(list);
            list.clear();
            
            //将去除重复的元素添回到list中
            list.addAll(lhs);
            System.out.println(list);    
        }
    }
  • 相关阅读:
    游泳池 (Standard IO)
    Antimonotonicity (Standard IO)
    开花 (Standard IO)
    Wild Number (Standard IO)
    数码问题 (Standard IO)
    输油管道 (Standard IO)
    猴子摘桃 (Standard IO)
    二叉树 (Standard IO)
    iis运行asp.net页面提示“服务器应用程序不可用”的解决办法_.NET.
    SVN安装配置与使用
  • 原文地址:https://www.cnblogs.com/zhuifeng-mayi/p/10135760.html
Copyright © 2020-2023  润新知