当类构造函数有参数时,如何在java中初始化数组?

2022-09-03 17:19:31

我有这个类构造函数:

public Category(int max){
...
}

问题是,我想做一个这个类的数组,我该如何初始化它?

private Category categories = new Category(max)[4];

不起作用。

更新

我需要做这样的事情吗?

private Category[] categories = new Category[4];

然后初始化每个对象?


答案 1

当您创建数组时,您正在创建一个 Category 数组。这是数组的一个实例。

使用 Category 对象填充数组时,此时将使用 Category with Const。

Category [] categories = new Category[4];
categories[0] = new Category(10);

答案 2

您也可以在内联中执行此操作 - 同时创建数组并使用一次使用其构造函数启动的值填充它。假设您有一个名为 Field 的类,该类具有一个构造函数,该构造函数采用两个参数,并且您希望构造一个这些参数的数组...

Field[] fields = new Field[]{
    new Field(1, "Record_Type"),
    new Field(3, "Record_SubType"),
    new Field(6, "Row_Number"),
    ...
};