Java快速数组列表

ple*_*ock 14 java arrays arraylist

我有一个非常简单的问题:

如何在Java上使这段代码更简单:

ArrayList<String> s = new ArrayList<String>();
s.add("str1");
s.add("str hello");
s.add("str bye");
//...
Run Code Online (Sandbox Code Playgroud)

像这样的东西:

ArrayList<String> s = {"a1", "str", "mystr"};
Run Code Online (Sandbox Code Playgroud)

或者那个:

ArrayList<String> s = new ArrayList<String>("a1", "str", "mystr");
Run Code Online (Sandbox Code Playgroud)

或者那个:

ArrayList<String> s = new ArrayList<String>();
s.addAll("a1", "str", "mystr");
Run Code Online (Sandbox Code Playgroud)

或者那个:

ArrayList<String> s = new ArrayList<String>();
s.addAll(new ArrayElements("a1", "str", "mystr"));
Run Code Online (Sandbox Code Playgroud)

我只想要语法提示.谢谢.

dty*_*dty 33

List<String> s = Arrays.asList("a1", "str", "mystr");

  • 这将返回固定大小的列表,而不是java.util.ArrayList.因此,当不再需要添加或删除元素时,这是很好的. (7认同)
  • 这是真的.OP不清楚这是否是一个问题. (3认同)

NPE*_*NPE 24

怎么样:

ArrayList<String> s = new ArrayList<String>();
Collections.addAll(s, "a1", "str", "mystr");
Run Code Online (Sandbox Code Playgroud)


sol*_*dil 5

List<String> s = Arrays.asList(new String[] {"a1", "str", "mystr"});
Run Code Online (Sandbox Code Playgroud)

  • `List <String> s = Arrays.asList("a1","str","mystr");`甚至更好 (9认同)

Jon*_*eet 5

我会使用Guava及其精彩的Lists课程:

List<String> list = Lists.newArrayList("a1", "str", "mystr");
Run Code Online (Sandbox Code Playgroud)


Eng*_*uad 5

你可以使用双支撑:

ArrayList<String> s = new ArrayList<String>()
{{
    add("str1");
    add("str hello");
    add("str bye");
    //...
}};
Run Code Online (Sandbox Code Playgroud)

  • 而不仅仅是产生深奥的语法,向OP解释它是什么以及它是如何工作的不是一个好主意吗? (2认同)