Java 9 改进的集合工厂方法

本贴最后更新于 491 天前,其中的信息可能已经时过境迁

Java 9 引入了一些改进的集合工厂方法,使得创建和初始化集合对象变得更加简洁和方便。这些改进包括 List.of()、Set.of()和 Map.of()等方法,用于创建不可变的集合对象。本教程将介绍 Java 9 改进的集合工厂方法的使用和注意事项。

1. List.of()

List.of()是一个静态方法,用于创建一个不可变的列表。它接受可变数量的参数,并返回一个包含这些参数的列表。

List<String> list = List.of("Apple", "Banana", "Orange");
System.out.println(list);  // 输出:[Apple, Banana, Orange]

在上面的示例中,我们使用 List.of()方法创建一个包含三个字符串的不可变列表。

需要注意的是,由于列表是不可变的,所以无法对其进行修改。任何试图修改列表的操作都会抛出 UnsupportedOperationException 异常。

2. Set.of()

Set.of()是一个静态方法,用于创建一个不可变的集合。它接受可变数量的参数,并返回一个包含这些参数的集合。

Set<Integer> set = Set.of(1, 2, 3, 4, 5);
System.out.println(set);  // 输出:[1, 2, 3, 4, 5]

在上面的示例中,我们使用 Set.of()方法创建一个包含五个整数的不可变集合。

同样地,由于集合是不可变的,所以无法对其进行修改。任何试图修改集合的操作都会抛出 UnsupportedOperationException 异常。

3. Map.of()

Map.of()是一个静态方法,用于创建一个不可变的映射。它接受一对键值对的参数,并返回一个包含这些键值对的映射。

Map<String, Integer> map = Map.of("Apple", 1, "Banana", 2, "Orange", 3);
System.out.println(map);  // 输出:{Apple=1, Banana=2, Orange=3}

在上面的示例中,我们使用 Map.of()方法创建一个包含三个键值对的不可变映射。

同样地,由于映射是不可变的,所以无法对其进行修改。任何试图修改映射的操作都会抛出 UnsupportedOperationException 异常。

4. 注意事项

使用改进的集合工厂方法时,需要注意以下几点:

  • 创建的集合对象是不可变的,即不能进行添加、删除或修改操作。
  • 方法的参数数量是有限的,具体取决于方法的重载形式。通常情况下,方法接受的参数数量在 1 到 10 之间。
  • 如果传递了重复的键或值,则会抛出 IllegalArgumentException 异常。
  • 创建的集合对象是原生类型的,而不是它们的子类。例如,List.of()方法返回的是 List 接口的实例,而不是 ArrayList 或 LinkedList 的实例。

结论

Java 9 改进的集合工厂方法提供了一种方便创建不可变集合对象的方式。通过这些方法,可以更加简洁地创建和初始化集合,减少了样板代码的编写,并提供了更好的性能和内存效率。

希望本教程能够帮助你理解和应用 Java 9 的集合工厂方法。祝你在使用集合工厂方法时取得成功!

注意:本文中的示例代码基于 Java 9 版本。

注意:文章如果有错误的地方,烦请各位大佬在评论区指正,或联系作者进行修改,万分感谢!!!

作者:永夜 Evernight

个人博客:luomuren.top

公众号:扫码_搜索联合传播样式-标准色版

  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3187 引用 • 8213 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...