如何在Java中声明动态对象数组?

2022-09-02 08:52:11

我想问一个关于Java的问题。我有一个用户定义的对象类,学生,它有2个数据成员,名称和ID。在另一个类中,我必须声明该对象[],(例如)。但是,我不知道对象数组的大小。是否可以声明对象数组但不知道大小?谢谢。student stu[?];


答案 1

正如您现在可能已经知道的那样,Java中的常规数组是固定大小的(数组的大小无法更改),因此为了动态地将项目添加到数组中,您需要一个可调整大小的数组。在 Java 中,可调整大小的数组实现为 ArrayList 类 ()。它的使用简单示例:java.util.ArrayList

import java.util.ArrayList;

// Adds a student to the student array list.
ArrayList<Student> students = new ArrayList<Student>();
students.add(new Student());

括号(在Java中称为泛型的功能)是可选的;但是,您应该使用它们。基本上,它们限制了可以存储在数组列表中的对象类型,因此您最终不会将 String 对象存储在充满 Integer 对象的数组中。<Student>


答案 2

改为用户。它会在您添加新元素时自动扩展。稍后,如果需要,可以将其转换为数组。ArrayList

作为另一个选项(不确定您到底想要什么),您可以声明字段而不立即初始化它。Object[]