初始化ArrayList

sar*_*012 5 java collections list

我认为很简单的问题.如何初始化ArrayList被叫方time.

谢谢.

aio*_*obe 11

这取决于初始化的含义.要简单地使用对timenew的引用值初始化变量ArrayList,您可以执行此操作

ArrayList<String> time = new ArrayList<String>();
Run Code Online (Sandbox Code Playgroud)

(替换String为要存储在列表中的对象类型.)

如果你想把东西放在列表中,你可以这样做

ArrayList<String> time = new ArrayList<String>();
time.add("hello");
time.add("there");
time.add("world");
Run Code Online (Sandbox Code Playgroud)

你也可以这样做

ArrayList<String> time = new ArrayList<String>(
    Arrays.asList("hello", "there", "world"));
Run Code Online (Sandbox Code Playgroud)

或者使用实例初始化程序

ArrayList<String> time = new ArrayList<String>() {{
    add("hello");
    add("there");
    add("world");
}};
Run Code Online (Sandbox Code Playgroud)

  • 但是如何在OP的情况下判断这是否可能呢?(也许他下面有'time.ensureCapacity(1000)`.为什么这样的初学者问题复杂化了? (2认同)

Vin*_*ert 7

Arrays.asListList允许您从值列表中构建一个。

然后,您可以ArrayList通过将 生成的只读列表传递给它来构建您的Arrays.asList

ArrayList time = new ArrayList(Arrays.asList("a", "b", "c"));
Run Code Online (Sandbox Code Playgroud)

但如果您需要的只是List声明的内联,则单独使用即可Arrays.asList

List time = Arrays.asList("a", "b", "c");
Run Code Online (Sandbox Code Playgroud)