使用时如何在List中添加元素Arrays.asList()

Pra*_*rve 33 java list

我们无法对我们从中获得的集合执行<Collection>.add<Collection>.addAll操作Arrays.asList..只允许删除操作.

那么如果我遇到需要添加新元素List而不删除以前元素的情况List怎么办?我怎样才能做到这一点?

Roh*_*ain 58

ArrayList使用构造函数创建一个新的:

List<String> list = new ArrayList<String>(Arrays.asList("a", "b"));
Run Code Online (Sandbox Code Playgroud)

  • 或 Stream.of("a", "b", "c").collect(Collectors.toList()) (4认同)

NPE*_*NPE 12

一种方法是构建一个新的ArrayList:

List<T> list = new ArrayList<T>(Arrays.asList(...));
Run Code Online (Sandbox Code Playgroud)

完成后,您可以随意修改list.


Mr.*_*r.Q 6

Arrays.asList(),生成一个实际上由数组支持的列表,并且它是一个变形为列表的数组。您可以将其用作列表,但不能对其执行某些操作,例如添加新元素。所以最好的选择是将它传递给另一个列表 obj 的构造函数,如下所示:

List<T> list = new ArrayList<T>(Arrays.asList(...));
Run Code Online (Sandbox Code Playgroud)