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

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

PHPz
发布: 2023-08-20 11:49:17
转载
1410 人浏览过

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

如果在创建不可修改的列表实例后,无法从列表中添加删除替换元素,则该列表被认为是不可修改的列表。静态工厂方法:List.of()提供了在Java 9中创建不可修改列表的便捷方式。

使用List.of()方法创建的列表实例具有以下特点。

  • 工厂方法返回的列表通常是不可变的。这意味着无法从列表中添加删除替换元素。对列表调用任何修改器方法会引发UnsupportedOperationException
  • 如果列表的包含元素是可变的,可能会导致列表的内容发生变化。
  • 可以使用不允许null元素的静态工厂方法创建不可变列表。如果尝试使用null元素创建列表,会抛出NullPointerException
  • 如果所有元素都是可序列化的,则不可修改的列表是可序列化的
  • 列表中元素的顺序与提供的参数的顺序或提供的数组中元素的顺序相同。

语法

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

Example

的中文翻译为:

示例

import java.util.List;
public class UnmodifiedListTest {
   public static void main(String[] args) {
<strong>      List<String></strong> countries = <strong>List.of</strong>("India", "Australia", "England", "Newzealand");
      System.out.println("Countries - " + countries);
      countries.add("Srilanka"); <strong>// throws UnsupportedOperationException</strong>
   }
}
登录后复制

输出

<strong>Countries - [India, Australia, England, Newzealand]
Exception in thread "main" java.lang.UnsupportedOperationException
 at java.base/java.util.ImmutableCollections.uoe(Unknown Source)
 at java.base/java.util.ImmutableCollections$AbstractImmutableList.add(Unknown Source)
 at UnmodifiedListTest.main(UnmodifiedListTest.java:7)</strong>
登录后复制

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

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