另一种填充ArrayList的方法

时间:2014-07-18 16:54:54

标签: java arraylist fill

为什么会这样?可以解释一下如何以及为什么,请!

List<String> list = new ArrayList<String>() {
    {
        add("one");
        add("two");
        add("three");
    }
};

for ( String element : list )
    System.out.println(element);

1 个答案:

答案 0 :(得分:1)

这意味着您创建了一个扩展arraylist的类并添加了一个静态块。

List<String> list = new ArrayList<String>(){};  // At this step you have created an instance of an anonymus class assigned to the list varibale

new ArrayList<String>() {
        {
        add("one");
        add("two");
        add("three");
        } // This is a static block inside your newly created anonymus class. 
};