java - 在 Java 中创建数组对象?

标签 java arrays

我是 Java 的新手,在数组方面遇到了一些小问题。在给定的练习中,必须使用方法“addExam”创建一个名为“Exam”的类。现在我试图解决这个问题,但只得到了 cass 的定义、实例变量和方法标题。其余的我在解决方案中查找,它看起来像:

public class Exam{
private int numberOfExams=15;
private Exam[]exams = new Exam[numberOfExams];

public void addExam(Exam exam){
exams[numberOfExams] = exam;
numberOfExams++;

现在回答我的问题:当我在方法 addExam 中将“exam”分配给数组 exams 时,是否在此处创建了一个新对象?如果是,为什么不使用方括号和“新运算符”?这个问题引出了一个更一般的问题:我知道数组是一种类类型,它们现在创建数组对象还是该数组类型的变量?

我真的需要一些帮助!

最佳答案

public void addExam(Exam exam){
exams[numberOfExams] = exam;

没有。没有创建新对象,无论传递给这里的对象是什么,都分配给了数组的第 0 个元素。

实际创建新对象的地方是调用 addExam 方法的地方。有点像

Exam exam = new Exam();
// do something
addExam(exam);

关于java - 在 Java 中创建数组对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26420614/

相关文章:

c - 在 2d 数组 3x3 幻方中查找重复值

python - 在 Python 中搜索字典列表的有效方法

C++ ||添加两个矩阵数组 - 更简单的输出方式?

python - 展平包含不同形状的 numpy 数组的列表

java - 读取OGG作为LWJGL 3 OpenAL的样本流

java - 打印图像中的行分隔符

javascript - 如何使用ajax将表单数据发送到Spring Controller

java - Spock - stub JSON 响应

Java - 在 setBorder 中设置字体/颜色

c#多维数组转换