我有MyClass
MyClass(String, String, int);
Run Code Online (Sandbox Code Playgroud)
我知道如何以这种方式添加到ArrayList:
MyClass.name = "Name";
MyClass.address = "adress";adress
MyClass.age = age;
Run Code Online (Sandbox Code Playgroud)
然后添加到arrayList,如:
list.add(MyClass);
Run Code Online (Sandbox Code Playgroud)
但现在我有很多以静态形式存在的对象MyClass,我想添加
ArrayList<MyClass> list = new ArrayList<MyClass>({"Name","Address", age};.....);
Run Code Online (Sandbox Code Playgroud)
我可以这样做吗 谢谢,无论如何
Roh*_*ain 41
你可以使用双括号初始化: -
List<MyClass> list = new ArrayList<MyClass>() {
{
add(new MyClass("name", "address", 23));
add(new MyClass("name2", "address2", 45));
}
};
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,inner braces
就像一个initializer
块,它用于list
一次性初始化..
还要注意你的结尾处的分号 double-braces
Pet*_*rey 23
你可以做
List<MyClass> list = Arrays.asList(
new MyClass("Name", "Address", age),
// many more
);
Run Code Online (Sandbox Code Playgroud)
注意:这将创建一个无法更改其大小的列表.
像这样的东西:
List<MyClass> list = new ArrayList<MyClass>(Arrays.asList(new MyClass[] {new MyClass("Name", "Address", age}));
Run Code Online (Sandbox Code Playgroud)
当然,你的类必须有这样的构造函数:
public MyClass(String name, String address, int age) {
...
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
52313 次 |
最近记录: |