Avatar ·

如何将数组(array)转换为列表(List)?总是遇到错误

大家好!我是Java新手,一直搞不清楚如何将数组转换为列表。我需要将一个字符串数组传递给一个接受 `List` 的方法,但总是出问题。 这是我的代码: ```java String[] array = {"apple", "banana", "cherry"}; List list = (List) array; // 编译错误:cannot cast ``` 然后我尝试使用 `Arrays.asList()`: ```java List list = Arrays.asList(array); list.add("orange"); // 抛出 UnsupportedOperationException! ``` 为什么 `Arrays.asList()` 不允许添加元素?我读到它返回一个列表,但它的行为很奇怪。我还听说过 `ArrayList` 和 `Collections.addAll()`,但不知道哪种方法正确以及它们的区别。 请告诉我如何正确且安全地将数组转换为一个完全可变的列表?以及为什么 `Arrays.asList()` 如此“有缺陷”?非常感谢代码示例和解释。