数组列表或Java中的列表声明已经询问并回答了如何声明一个空数组列表,但我如何声明一个带值的数组列表?

我尝试了以下,但它返回一个语法错误:

import java.io.IOException;
import java.util.ArrayList;

public class test {
    public static void main(String[] args) throws IOException {
        ArrayList<String> x = new ArrayList<String>();
        x = ['xyz', 'abc'];
    }
}

当前回答

用这个吧:

ArrayList<String> x = new ArrayList(Arrays.asList("abc", "mno"));

其他回答

试试这个!

List<String> x = new ArrayList<String>(Arrays.asList("xyz", "abc"));

如果不需要调用特定的方法,那么使用接口List声明ArrayList是一个很好的实践。

你可以这样做:

List<String> temp = new ArrayList<String>(Arrays.asList("1", "12"));

用这个吧:

ArrayList<String> x = new ArrayList(Arrays.asList("abc", "mno"));

Use:

List<String> x = new ArrayList<>(Arrays.asList("xyz", "abc"));

如果以后不想向列表中添加新元素,还可以使用(Arrays.数组。asList返回固定大小的列表):

List<String> x = Arrays.asList("xyz", "abc");

注意:如果你喜欢,你也可以使用静态导入,然后它看起来像这样:

import static java.util.Arrays.asList;

...

List<String> x = new ArrayList<>(asList("xyz", "abc"));

or

List<String> x = asList("xyz", "abc");

Guava库包含用于创建列表和其他集合的方便方法,这比使用标准库类要漂亮得多。

例子:

ArrayList<String> list = newArrayList("a", "b", "c");

(这假设导入static com.google.common.collect.Lists.newArrayList;)