由 0 个元素组成的数组.(爪哇)

  • 本文关键字:数组 爪哇 元素 java
  • 更新时间 :
  • 英文 :


我正在学习OCA程序员I Oracle认证,因此我正在复习考试中可能遇到的所有棘手问题。一个是这个:

int [] zero = new int[0];

这样一个数组声明为在构造函数中具有 0 在堆中实际做什么? 创建对什么的引用?我已经尝试过查看它是否给出 null 并且没有。 (零 != null) 通过测试。

你有什么想法吗?提前谢谢。

零长度数组仍然是一个数组,内存将分配给这个数组。

  1. 数组实现对象。对象是一个具有方法和字段的类。

  2. 大小
  3. 也是内存中指示数组大小的附加字段。

  4. 还需要用于跟踪垃圾回收对对象的引用的其他信息。

因此,所有这些都需要内存分配。

当这个数组可以使用时,更有趣的问题,请阅读这个堆栈溢出问题。

在堆中实际要做什么?

零长度的 int 数组。

创建对什么的引用?

对零长度 int 数组的引用。

我已经尝试过查看它是否给出 null 并且没有

为什么呢?

Java 中的数组是对象。例如,它有"长度"变量。以及相关数据。因此,即使您创建一个 0 大小的数组,也只有数据部分的大小为零。数组对象的其他部分将仍然存在。

最新更新