首页 > Java > java教程 > 在Java 9中,我们如何创建一个不可修改的Set?

在Java 9中,我们如何创建一个不可修改的Set?

王林
发布: 2023-08-20 17:57:28
转载
1405 人浏览过

在Java 9中,我们如何创建一个不可修改的Set?

不可变的静态工厂方法Set.of()可以提供一种方便的方式在Java 9中创建不可修改的集合

使用Set.of()方法创建的集合实例具有以下特点。

  • 由工厂方法返回的集合通常是不可变的。这意味着不能向集合中添加删除替换元素。在集合上调用任何修改器方法都会引发UnsupportedOperationException
  • 如果集合中的元素是可变的,可能会导致集合的内容看起来发生变化。
  • 可以使用不允许null元素的静态工厂方法创建不可变的集合。如果尝试使用null元素创建集合,会抛出NullPointerException
  • 在创建不可变集合时,会拒绝重复的元素。将重复的元素传递给静态工厂方法会导致IllegalArgumentException
  • 集合元素的迭代顺序是未指定的,可能会发生变化。

语法

<strong>Set.of(E... elements)</strong>
登录后复制

Example

的中文翻译为:

示例

import java.util.Set;
public class SetOfMethodTest {
   public static void main(String args[]) {
      Set<String> names = <strong>Set.of</strong>("Adithya", "Bhavish", "Chaitanya", "Jai");
      System.out.println("Names - " + names);
      names.add("Raja");       <strong>// throws UnsupportedOperationException</strong>
   }
}
登录后复制

输出

<strong>Names - [Bhavish, Adithya, Jai, Chaitanya]
</strong><strong>Exception in thread "main" java.lang.UnsupportedOperationException
 at java.base/java.util.ImmutableCollections.uoe(Unknown Source)
 at java.base/java.util.ImmutableCollections$AbstractImmutableSet.add(Unknown Source)
   at SetOfMethodTest.main(SetOfMethodTest.java:8)</strong>
登录后复制

以上是在Java 9中,我们如何创建一个不可修改的Set?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板