【发布时间】:2011-01-25 10:09:10
【问题描述】:
人们说asList 方法将数组转换为列表而不是复制,因此'aList' 中的每个更改都会反映到'a' 中。所以在 'aList' 中添加新值是非法的,因为数组的大小是固定的。
但是,asList() 方法返回 ArrayList<T>。编译器如何区分第 3 行和第 5 行。第 3 行给了我异常 (UnsupportedOperationException)。
String[] a = {"a","b","c","d"};//1
List<String> aList = Arrays.asList(a);//2
aList.add("e");//3
List<String> b = new ArrayList<String>();//4
b.add("a");//5
【问题讨论】:
-
“人们说什么”并不重要。 Javadoc 说什么很重要。
标签: java collections