Java中用对象数组管理多个数据的核心是先定义类、再创建该类的对象数组、最后逐个存入对象实例;例如定义Student类,声明Student[] students = new Student[5],再通过students[i] = new Student(...)存入对象并操作属性。

Java 中用对象数组管理多个数据,核心是先定义类、再创建该类的对象数组、最后逐个存入对象实例。这种方式适合统一处理一批结构相同但内容不同的数据,比如多个学生、多本书、多个订单等。
1. 定义一个类来封装数据结构
对象数组存储的是“对象”,不是基本类型,所以必须先有对应的类。例如,管理学生信息:
class Student {
String name;
int age;
double score;
public Student(String name, int age, double score) {
this.name = name;
this.age = age;
this.score = score;
}
}
这个类描述了每个学生的共性字段和构造方式,后续每个 Student 对象就代表一个具体的学生。
2. 声明并初始化对象数组
语法和普通数组类似,只是类型是类名(如 Student[]),注意:数组创建后,每个元素默认为 null,不自动创建对象。
立即学习“Java免费学习笔记(深入)”;
- 声明 + 分配空间(未初始化对象):
Student[] students = new Student[5]; - 声明 + 初始化(推荐,更简洁):
Student[] students = {<br> new Student("张三", 19, 87.5),<br> new Student("李四", 20, 92.0),<br> new Student("王五", 19, 78.5)<br>};
3. 存取和操作对象数组中的数据
通过下标访问数组元素,再用点号调用属性或方法。记得先检查是否为 null,避免空指针异常。
// 给第0个学生修改成绩
if (students[0] != null) {
students[0].score = 95.0;
}
// 打印所有学生信息
for (int i = 0; i < students.length; i++) {
if (students[i] != null) {
System.out.println(students[i].name + ", " + students[i].age + ", " + students[i].score);
}
}
4. 注意事项和常见误区
- 对象数组本身只存引用,真正对象在堆内存中;数组变量只保存地址
-
new Student[5]创建的是长度为 5 的数组,但里面 5 个都是 null,必须手动用new Student(...)赋值才能使用 - 数组长度固定,不能动态增删;需要灵活管理时,建议改用
ArrayList<Student> - 遍历时务必判空,尤其在部分位置未赋值的情况下
对象数组是理解 Java 面向对象与数据聚合的基础方式,适合数据量固定、类型明确的场景。写熟了,对后续学集合、泛型、流式处理都有帮助。


















