在java中创建自定义对象数组

kis*_*ore 1 java arrays

我有100条数据记录从服务进入我的系统.我想为每个记录创建100个类对象,以将其序列化为我的自定义类.我在for循环中创建了这个内存,如下所示

for(int i=0; i < 100; i++)
{
SomeClass s1 = new SomeClass();
//here i assign data to s1 that i received from service
}
Run Code Online (Sandbox Code Playgroud)

有没有办法在数组外创建所有100个对象,只是在for循环中分配数据.

I already tried Array.newInstance and SomeClass[] s1 = new SomeClass[100]
Run Code Online (Sandbox Code Playgroud)

两者都会产生空指针数组.有什么办法可以在for循环之外分配所有内存.

ior*_*vic 18

当你这样做:

Object[] myArray = new Object[100]
Run Code Online (Sandbox Code Playgroud)

Java会分配100个位置来放置对象.它不会为您实例化对象.

你可以这样做:

SomeClass[] array = new SomeClass[100];

for (int i = 0; i < 100; i++) {
    SomeClass someObject = new SomeClass();
    // set properties
    array[i] = someObject;
}
Run Code Online (Sandbox Code Playgroud)