我有一个包含预先确定项目的 ArrayList
的类,在此示例中为水果。在我的代码中,我有一个构造函数调用一个填充我的列表的方法。
问题是每次实例化此类的实例时,都会重新填充列表。如何一次创建和填充列表?
public class Test {
ArrayList<String> lst = new ArrayList<String>();
public Test() {
populate();
}
public void populate() {
lst.add("Apple");
lst.add("Banana");
}
}
最佳答案
你可以做到 static
,并使用 static
initialization block .我也更愿意编程到 List
界面,我会使用菱形运算符 <>
.类似的东西,
public class Test {
private static List<String> lst = new ArrayList<>();
static {
lst.add("Apple");
lst.add("Banana");
}
public Test() {
// ...
}
}
或者,使用 Arrays.asList(T...)
并消除像
public class Test {
private static List<String> lst = Arrays.asList("Apple", "Banana");
public Test() {
// ...
}
}
关于java - 如何只创建一次实例变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33323491/