java中list是可变值还是不可变值
时间: 2023-12-06 15:40:14 浏览: 29
Java中的List是可变值,也就是说,List对象可以随时添加、删除或修改其中的元素。可以通过调用List接口提供的add、remove和set等方法来实现对List对象的操作。但是,Java中也有不可变的List实现,例如Arrays.asList()方法返回的List对象是不可变的,也就是说,它的大小和元素不能被修改。
相关问题
Java创建一个不可变List
在 Java 中,可以使用 Collections 类的 unmodifiableList() 方法来创建一个不可变 List。该方法接受一个 List 对象作为参数,返回一个新的 List 对象,该对象是只读的,不能被修改。以下是创建不可变 List 的示例代码:
```java
List<Integer> myList = new ArrayList<>();
myList.add(1);
myList.add(2);
myList.add(3);
myList.add(4);
myList.add(5);
List<Integer> immutableList = Collections.unmodifiableList(myList);
```
在这个例子中,我们首先创建了一个可变的 List 对象 myList,并向其中添加了 5 个整数。然后,我们调用 Collections 类的 unmodifiableList() 方法,将 myList 转换为一个不可变的 List 对象 immutableList。现在,immutableList 不能被修改,任何尝试修改它的操作都会导致 UnsupportedOperationException 异常的抛出。
java中怎么创建不可变集合
你可以使用Java中的Collections类中的unmodifiable方法来创建不可变集合。例如,可以使用以下代码创建一个不可变的List:
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
List<String> unmodifiableList = Collections.unmodifiableList(list);
现在,unmodifiableList是一个不可变的List,任何尝试修改它的操作都会抛出UnsupportedOperationException异常。