📅  最后修改于: 2023-12-03 15:13:29.955000             🧑  作者: Mango
在Java中,我们经常需要处理数组。有时候我们想要将一个数组转换为List对象,这时候我们可以使用Arrays.asList()
方法。然而,如果我们想要向这个List中添加或移除元素,我们会发现程序会抛出UnsupportedOperationException
异常。这是因为Arrays.asList()
返回的是一个不可修改的List。那么,有没有办法对其进行修改呢?答案是有的。
通过在Arrays.asList()
方法返回的List中使用一个新的ArrayList对象来替换,我们就可以解决这个问题。
以下是一段使用Arrays.asList()
和.add()
方法来添加元素到List的示例代码:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
String[] fruits = {"apple", "banana", "orange"};
List<String> fruitList = new ArrayList<>(Arrays.asList(fruits));
fruitList.add("pear");
System.out.println(fruitList); // [apple, banana, orange, pear]
}
}
首先,我们使用Arrays.asList()
来将字符串数组fruits
转换为List对象。这个List对象是不可修改的,不能直接通过.add()
方法添加元素。为了解决这个问题,我们创建了一个新的ArrayList对象fruitList
,并将fruits
数组中的所有元素添加到这个List中。
接下来,我们使用.add()
方法向fruitList
中添加一个新的元素"pear"。
最后,我们使用System.out.println()
方法打印了添加元素后的fruitList
的内容。
值得注意的是,通过这种方式修改了Arrays.asList()
返回的List对象可能会影响原始数组中的元素。因此,在使用这种方式修改数组之前,请确保已经考虑了适当的方案。
总之,通过在Arrays.asList()
方法返回的List中使用一个新的ArrayList对象来替换,我们可以方便地向数组中添加或移除元素。