How to initialize array in java when the class constructor has parameters?

后端 未结 4 935
耶瑟儿~
耶瑟儿~ 2021-02-04 09:28

I have this class constructor:

public Category(int max){
...
}

The thing is, I want to make an array of this class, how do I initialize it?

相关标签:
4条回答
  • 2021-02-04 10:18
    private Category[] categories = new Category[4];
    

    Will be instantiated with 4 null categories, you have to fill the content yourself later.
    Or you can try:

    private Category[] categories = {new Category(max), new Category(max), new Category(max), new Category(max)};
    
    0 讨论(0)
  • 2021-02-04 10:23

    Initialize it as an array first

    Category[] categories = new Categories[4];
    categories[0] = new Category(max);
    

    Then initialize each individual element.

    0 讨论(0)
  • 2021-02-04 10:24

    You can also do that in-line - make both the array and populate it with values initiated with their constructors at once. Suppose you have a class called Field that has a constructor taking two parameters and you want to construct an array of these ...

    Field[] fields = new Field[]{
        new Field(1, "Record_Type"),
        new Field(3, "Record_SubType"),
        new Field(6, "Row_Number"),
        ...
    };
    
    0 讨论(0)
  • 2021-02-04 10:26

    When you are making an array , you are creating an array of Category. That s an instance of array.

    When you are populating the array with Category objects, at that point you use the Category with Const.

    Category [] categories = new Category[4];
    categories[0] = new Category(10);
    
    0 讨论(0)
提交回复
热议问题