JDK21中Sequenced Collections(序列集合)的实现

 更新时间:2025年09月07日 10:20:25   作者:考虑考虑  
Sequenced Collections是Java中的一个新特性,它提供了一种有序的集合实现,本文主要介绍了JDK21中Sequenced Collections(序列集合)的实现,感兴趣的可以了解一下

前言

JDK21引入了新的集合接口族 Sequenced 集合(JEP 431),提供了对集合在两端的操作,它提供了一种有序的集合实现

集合操作

SequencedCollection使用

其接口方法为

public class SequencedCollectionDemo {


    public static void main(String[] args) {
        SequencedCollection<Integer> coll = new ArrayList<>();
        coll.add(3);
        coll.addFirst(1);
        coll.addLast(2);
        System.out.println(coll);
        System.out.println(coll.getFirst());
        System.out.println(coll.getLast());
        SequencedCollection<Integer> reversed = coll.reversed();
        System.out.println(reversed);
    }
}

输出结果为

public class SequencedArrayDemo {


    public static void main(String[] args) {
        SequencedCollection<Integer> coll = new ArrayDeque<>();
        coll.addFirst(1);
        coll.addLast(2);
        System.out.println(coll.getFirst());
        System.out.println(coll.getLast());  
        SequencedCollection<Integer> reversed = coll.reversed();
        System.out.println(reversed);

    }
}

输出结果为

SequencedSet使用

其接口为

SequencedSet不能作用于HashSet

public class SequencedSetDemo {


    public static void main(String[] args) {
        SequencedSet<Integer> coll = new LinkedHashSet<>();
        coll.add(3);
        coll.addFirst(1);
        coll.addLast(2);
        System.out.println(coll);
        System.out.println(coll.getFirst());
        System.out.println(coll.getLast());
        SequencedCollection<Integer> reversed = coll.reversed();

    }
}

SequencedMap使用

SequencedMap不能作用于HashMap

public class SequencedMapDemo {


    public static void main(String[] args) {
        SequencedMap<Integer, Integer> coll = new LinkedHashMap<>();
        coll.put(1, 1);
        coll.putFirst(2, 2);
        coll.putLast(3, 3);
        System.out.println(coll);
        System.out.println(coll.firstEntry());
        System.out.println(coll.lastEntry());
        SequencedMap<Integer, Integer> reversed = coll.reversed();
        System.out.println(reversed);

    }
}

输出结果为

总结

Sequenced Collections是Java中的一个新特性,它提供了一种有序的集合实现,其具有高效性能、可扩展性等优点,在使用新版本的JDK时,可以使用,但是根据个人习惯进行技术选取就好

到此这篇关于JDK21中Sequenced Collections(序列集合)的实现的文章就介绍到这了,更多相关JDK21 Sequenced Collections内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 带你深入理解MyBatis缓存机制

    带你深入理解MyBatis缓存机制

    缓存是一般的ORM框架都会提供的功能,目的就是提升查询的效率和减少数据库的压力,跟Hibernate 一样,MyBatis 也有一级缓存和二级缓存,并且预留了集成第三方缓存的接口,这篇文章主要给大家介绍了关于MyBatis缓存机制的相关资料,需要的朋友可以参考下
    2021-10-10
  • Java使用Ehcache缓存框架的技术指南

    Java使用Ehcache缓存框架的技术指南

    Ehcache 是 Java 平台下一个开源、高性能的分布式缓存框架,常用于提高系统性能和可扩展性,它能够帮助开发者缓存频繁访问的数据,从而减少对数据库和其他持久化存储的访问压力,本文给大家介绍了Java使用Ehcache缓存框架的技术指南,需要的朋友可以参考下
    2025-03-03
  • java中的静态代码块、构造代码块、构造方法详解

    java中的静态代码块、构造代码块、构造方法详解

    下面小编就为大家带来一篇java中的静态代码块、构造代码块、构造方法详解。小编觉得挺好的,现在分享给大家。给大家一个参考。一起跟随小编过来看看吧
    2016-03-03
  • Java URLDNS利用链分析

    Java URLDNS利用链分析

    文章分析了一个利用ysoserial-all.jar进行DNS利用链攻击的过程,该利用链利用了URL类的hashCode方法,并HashMap类的序列化和反序列化机制,通过控制hashCode的值来实现在反序列化时无法发起DNS请求,最后提了一种通过反射修改类的属性值来绕过该问题的攻击方法
    2026-04-04
  • 详解如何在Java中创建Excel迷你图

    详解如何在Java中创建Excel迷你图

    迷你图是一种简洁而有效的数据可视化方式,常用于展示趋势和变化,通常被用于数据仪表盘、报告和展示中,以便在有限的空间内展示多个数据集的趋势,今天小编为大家介绍如何在Java中创建Excel迷你图,需要的朋友可以参考下
    2023-10-10
  • 关于protected修饰符详解-源于Cloneable接口

    关于protected修饰符详解-源于Cloneable接口

    这篇文章主要介绍了protected修饰符详解-源于Cloneable接口,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • Java如何使用递归查询多级树形结构数据(多级菜单)

    Java如何使用递归查询多级树形结构数据(多级菜单)

    这篇文章主要介绍了Java如何使用递归查询多级树形结构数据(多级菜单),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • 一次因Java应用造成CPU过高的排查实践过程

    一次因Java应用造成CPU过高的排查实践过程

    一个应用占用CPU很高,除了确实是计算密集型应用之外,通常原因都是出现了死循环。下面这篇文章主要给大家介绍了一次因Java应用造成CPU过高的排查实践过程,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-11-11
  • mybatis通过if语句实现增删改查操作

    mybatis通过if语句实现增删改查操作

    这篇文章主要介绍了mybatis通过if语句实现增删改查操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • SpringBoot+Redis实现分布式缓存的方法步骤

    SpringBoot+Redis实现分布式缓存的方法步骤

    在高并发的分布式的系统中,缓存是提升系统性能的重要手段,本文主要介绍了SpringBoot+Redis实现分布式缓存的方法步骤,具有一定的参考价值,感兴趣的可以了解一下
    2024-07-07

最新评论