LinkdHashSet()集合的显著特征之有序性

原理:LinkedHashSet的有序性是通过其底层数据结构——LinkedHashMap来实现的。LinkedHashMap是一个基于散列表的Map实现,它内部维护了一个双向链表来记录元素的插入顺序。当元素被添加到LinkedHashSet中时,实际上是被添加到了其底层LinkedHashMap的一个桶(bucket)中,并且该元素还会被添加到双向链表的末尾,从而保持了元素的插入顺序。

代码如下:

public static void main(String[] args) {
        //创建三个学生对象
        Student s1 = new Student("张三", 21);
        Student s2 = new Student("李四", 21);
        Student s3 = new Student("王五", 21);

        //创建LinkedHashSet集合
        LinkedHashSet<Student> l = new LinkedHashSet<>();

        //添加对象
        l.add(s1);
        l.add(s2);
        l.add(s3);

        //打印集合
        l.forEach(System.out::println);
    }

打印结果如下:

结论:LinkedHashSet集合的有序性是其重要的特性之一,它使得LinkedHashSet在需要保持元素顺序的场景中非常有用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值