在Java 9中如何初始化不可变集合?


prtyaa
prtyaa 2024-01-09 21:57:35 62021 赞同 0 反对 0
分类: 资源 标签: 运维
Java 9提供了工厂方法来创建不可变的列表,集合和映射。它可以用于创建空的或非空的集合对象。在Java 8和之前的版本中,我们可以使用集合类的实用方法,如unmodifiableXXX来创建不可变的集合对象。如果我们需要创建一个不可变的列表,那么可以使用Collections.unmodifiableList()方法。

这些工厂方法允许我们轻松初始化不可变的集合,无论它们是空的还是非空的。

不可变列表的初始化:

List immutableEmptyList = List.of();

在上面的代码中,我们初始化了一个空的不可变的List。

初始化不可变的集合:

Set immutableEmptySet = Set.of();

在上面的代码中,我们初始化了一个空的不可变的Set。

初始化不可变的map:

Map immutableEmptyMap = Map.of();

In the above, we have initialized an empty, immutable Map.

Example

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class ImmutableCollectionTest {
public static void main(String args[]) {
List list8 = new ArrayList();
list8.add(“INDIA”);
list8.add(“AUSTRALIA”);
list8.add(“ENGLAND”);
list8.add(“NEWZEALAND”);
List immutableList8 = Collections.unmodifiableList(list8);
immutableList8.forEach(System.out::println);
System.out.println();
List immutableList = List.of(“INDIA”, “AUSTRALIA”, “ENGLAND”, “NEWZEALAND”);
immutableList.forEach(System.out::println);
System.out.println();
Set immutableSet = Set.of(“INDIA”, “AUSTRALIA”, “ENGLAND”, “NEWZEALAND”);
immutableSet.forEach(System.out::println);
System.out.println();
Map immutableMap = Map.of(“INDIA”, “India”, “AUSTRALIA”, “Australia”, “ENGLAND”, “England”, “NEWZEALAND”, “Newzealand”);
immutableMap.forEach((key, value) -> System.out.println(key + ” : ” + value));
System.out.println();
}
}

输出

INDIA
AUSTRALIA
ENGLAND
NEWZEALAND

INDIA
AUSTRALIA
ENGLAND
NEWZEALAND

AUSTRALIA
ENGLAND
NEWZEALAND
INDIA

AUSTRALIA : Australia
ENGLAND : England
NEWZEALAND : Newzealand
INDIA : India

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
prtyaaL0
粉丝 1 资源 1949 + 关注 私信
最近热门资源
麒麟系统版本介绍白皮书  524
MiSans 阿拉伯语字体文件  466
解决新版本麒麟系统中微信打开白屏显示  406
麒麟系统进行系统监控,查看进程的运行时间来优化性能  339
临时关闭swap分区与永久关闭swap分区(注意必须确保系统有足够内存运行!)  231
统信桌面专业版添加字体  224
统信uos单一程序黑屏,任务栏正常显示解决办法  224
统信uos快捷键文档  194
统信系统双无线网卡设置关闭开启单一网卡  147
分享一个磁盘恢复工具,适用于多平台(包括统信)  128
最近下载排行榜
麒麟系统版本介绍白皮书 0
MiSans 阿拉伯语字体文件 0
解决新版本麒麟系统中微信打开白屏显示 0
麒麟系统进行系统监控,查看进程的运行时间来优化性能 0
临时关闭swap分区与永久关闭swap分区(注意必须确保系统有足够内存运行!) 0
统信桌面专业版添加字体 0
统信uos单一程序黑屏,任务栏正常显示解决办法 0
统信uos快捷键文档 0
统信系统双无线网卡设置关闭开启单一网卡 0
分享一个磁盘恢复工具,适用于多平台(包括统信) 0
作者收入月榜
1

prtyaa 收益399.62元

2

zlj141319 收益236.11元

3

IT-feng 收益219.61元

4

1843880570 收益214.2元

5

风晓 收益208.24元

6

哆啦漫漫喵 收益204.5元

7

777 收益173.07元

8

Fhawking 收益106.6元

9

信创来了 收益106.03元

10

克里斯蒂亚诺诺 收益91.08元

请使用微信扫码

添加我为好友,拉您入交流群!

请使用微信扫一扫!