[英]How to declare a dynamic object array in Java?
我想问一个关于Java的问题。 我有一个用户定义的对象类,student,它有 2 个数据成员,name 和 id。 在另一堂课中,我必须声明那个对象[],(例如student stu[?];
)。 但是,我不知道对象数组的大小。 是否可以声明一个对象数组但不知道大小? 谢谢。
正如您现在可能已经发现的那样,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());
<Student>
括号(Java 中称为泛型的特性)是可选的; 但是,您应该使用它们。 基本上,它们限制了您可以存储在数组列表中的对象类型,因此您最终不会将 String 对象存储在一个充满 Integer 对象的数组中。
用户ArrayList
代替。 当您添加新元素时,它会自动扩展。 如果需要,稍后您可以将其转换为数组。
作为另一种选择(不确定你到底想要什么),你可以声明Object[]
字段而不是立即初始化它。
不可能,我们需要在声明对象数组时指定数组的大小;
一种声明对象数组的方法
student st[]; st=new student[3];
第二种方式
student st[]=new student[5];
在这两种情况下,都不会创建任何对象,只是为数组分配了空间。
st=new student[1];
这将创建一个新对象;
您可以声明为: Student stu[]=null;
,并以固定大小创建它: stu[]=new Student[10]
直到您知道大小。 如果必须使用数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.