Java 21新特性:Sequenced Collections(有序集合)
在JDK 21中,Sequenced Collections的引入带来了新的接口和方法来简化集合处理。此增强功能旨在解决访问Java中各种集合类型的第一个和最后一个元素需要非统一且麻烦处理场景。
下面一起通过本文来了解一下不同集合处理示例。
Sequenced Collections接口
Sequenced Collections引入了三个新接口:
- SequencedCollection
- SequencedMap
- SequencedSet
这些接口附带了一些新方法,以提供改进的集合访问和操作功能。
第一个和最后一个元素的访问
在JDK 21之前,检索Java中集合的第一个和最后一个元素涉及不同的方法和途径,具体取决于集合类型。
下面让我们看一下使用JDK 21之前的JDK API调用访问第一个和最后一个元素的一些示例:
访问位置 | List | Deque | SortedSet |
---|---|---|---|
第一个元素 | list.get(0) | deque.getFirst() | set.first() |
最后一个元素 | list.get(list.size()-1) | deque.getLast() | set.last() |
可以看到,一个简单的操作,在不同的集合中需要不同的编写方式,非常麻烦!
但在JDK 21之后,访问第一个和最后一个元素就方法多了:
对于List
, Deque
, Set
这些有序的集合,访问方法变得统一起来:
- 第一个元素:
collection.getFirst()
- 最后一个元素:
collection.getLast()
好了,今天的分享就到这里。如果您学习过程中如遇困难?可以加入我们超高质量的技术交流群,参与交流与讨论,更好的学习与进步!另外,不要走开,关注我!持续更新Java新特性专栏!
欢迎关注我的公众号:程序猿DD。第一时间了解前沿行业消息、分享深度技术干货、获取优质学习资源

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
重磅 |《开源数据库生态发展研究报告》发布 GreatSQL为MySQL5.7最佳替代方案!
近年来,随着数字化转型深入推进和数据量的爆炸式增长,行业应用对数据库的需求变化推动数据库技术加速创新。数据库作为数字经济基础底座,连接上 层应用和底层基础资源,在数字经济时代展现出巨大的价值和潜能。 9月21日,在中国信通院举办的2023 OSCAR开源产业大会上,《开源数据库生态发展研究报告》正式对外亮相。该报告针对MySQL数据库发展现状、技术创新、产业应用三方面梳理了发展情况,并对我国基于MySQL技术路线的开源数据库产业进行展望。 2023年10月,MySQL开源数据库5.7版本生命周期即将结束,报告分析我国基于MySQL技术路线的开源数据库发展情况,也有利于为数据库用户在数据库替代和迁移选型过程中提供有价值的参考借鉴。 报告核心内容解读 MySQL数据库应用范围广 在全球主流数据库中,MySQL一直是最流行的开源数据库,拥有广泛受众。DB-Engines流行度排名中,MySQL已连续数年位于流行度前两位。Slintel网站2022年全球关系型数据库市场规模数据显示,MySQL市场份额占比最高,达到43.04%,是事实上全球范围内影响最广泛的开源数据库(排名第二的Oracl...
- 下一篇
专为小白打造—Kafka一篇文章从入门到入土 | 京东云技术团队
一、什么是Kafka MQ消息队列作为最常用的中间件之一,其主要特性有:解耦、异步、限流/削峰。 Kafka 和传统的消息系统(也称作消息中间件)都具备系统解耦、冗余存储、流量削峰、缓冲、异步通信、扩展性、可恢复性等功能。与此同时,Kafka 还提供了大多数消息系统难以实现的消息顺序性保障及回溯消费的功能。 二、Kafka常用概念 2.1 Topic与Partition Topic(主题)是一个逻辑概念,在物理上并不存储。主要用于描述一个类型的消息。例如我们有一个业务系统会发送一个描述用户订单状态的消息,那么这一个类型里面所有的消息就是一个Topic,又比如这个业务系统同时还会发送描述会员余额的消息,那么这个就是一个新的消息类型,也就是一个新的Topic。 Partition(分区)是一个物理概念,是实际存在于物理设备上的。一个Topic由多个Partition共同组成。Partition的存在是为了提高消息的性能与吞吐量,多个分区多个进程消息处理速度肯定要比单分区快的多。 2.2 Broker与Partition Broker作为分布式的实现,其实可以直接简单理解为一个Kafka进程...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Hadoop3单机部署,实现最简伪集群
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7,8上快速安装Gitea,搭建Git服务器