我想知道如何创建一个对象数组的ArrayList
。例如
Object[] objectArray = new Object() // Varying amount of object[]
我希望Object[]
添加到ArrayList
。我看到可以通过以下方式创建ArrayList
个数组:
ArrayList<String[]> action = new ArrayList<String[]>();
所以我认为它会如此简单:
ArrayList<objectArray[]> action = new ArrayList<objectArray[]>();
但显然不是。
答案 0 :(得分:2)
以这种方式创建数组的ArrayList:
ArrayList<Object[]> action = new ArrayList<Object[]>();
每次向该列表添加Object []时,它必须具有固定长度。
如果你想在ArrayList中使用可变长度数组,我建议你使用ArrayList<ArrayList<Object>>
。
您使用objectArray
的语法只是无效的Java语法。
答案 1 :(得分:1)
泛型List
类中的type参数应该是类名,而不是引用该数组的变量的名称:
ArrayList<Object[]> action = new ArrayList<Object[]>();
两个注释:
尽量避免向实现声明类型。将action
声明为List
(接口):
List<Object[]> action = new ArrayList<Object[]>();
如果您将参数改为List
而不是Object
的数组,那么这会让生活更容易:
List<List<?>> action = new ArrayList<List<?>>();
答案 2 :(得分:0)
ArrayList<LoadClass[]> sd = new ArrayList<LoadClass[]>();
这有效:)
答案 3 :(得分:0)
所以,你有两个问题:
Object[] objectArray = new Object()
ArrayList<objectArray[]> action = new ArrayList<objectArray[]>();
将其更改为:
int MAX_ARRAY = 3;
Object[] objectArray = new Object[MAX_ARRAY];
ArrayList<Object[]> action = new ArrayList<Object[]>();
现在您可以将objectArray添加到&#34; action&#34;:
action.add(objectArray);
答案 4 :(得分:0)
这很简单。
// Class Student with a attribute name
public class Student{
String name;
public Student(String name){
this.name = name;
}
public String getName(){
return this.name;
}
public static void main(String[] args) {
// Creating an ArrayList for Students
ArrayList<Student> students = new ArrayList<Student>();
// Creating an Students Objects
Student a1 = new Student("Name1");
Student a2 = new Student("Name2");
Student a3 = new Student("Name3");
// Populating ArrayList<Student>
students.add(a1);
students.add(a2);
students.add(a3);
// For Each to sweeping all objects inside of this ArrayList
for(Student student : students){
System.out.println(student.getName());
}
}
享受!