我想从列表中删除特定元素.迭代列表时我不想这样做.我想指定必须删除的值.在javadocs中我找到了函数List.remove(Object 0)
这是我的代码:
String str="1,2,3,4,5,6,7,8,9,10";
String[] stra=str.split(",");
List<String> a=Arrays.asList(stra);
a.remove("2");
a.remove("3");
Run Code Online (Sandbox Code Playgroud)
但我得到一个例外: java.lang.UnsupportedOperationException
NPE*_*NPE 24
问题是,Arrays.asList()
返回不支持插入/删除列表(它只是一个视图上stra
).
要修复,请更改:
List<String> a = Arrays.asList(stra);
Run Code Online (Sandbox Code Playgroud)
至:
List<String> a = new ArrayList<String>(Arrays.asList(stra));
Run Code Online (Sandbox Code Playgroud)
这会生成列表的副本,允许您对其进行修改.