当前位置: 首页 > 面试题库 >

空数组和空数组有什么区别?

吴鸿彩
2023-03-14
问题内容

如果未初始化int数组的各个元素,则默认情况下存储在其中的内容是什么?我显然发现其中有一个空数组或空数组。有什么区别,哪一个适用于我的第一个问题?


问题答案:

从技术上讲,没有 null数组 之类的东西;但是由于数组是对象,所以数组类型是引用类型(即:数组变量仅保存对数组的 引用
),这意味着数组变量可以null而不是实际指向数组:

int[] notAnArray = null;

一个 数组是零长度的阵列; 它没有元素:

int[] emptyArray = new int[0];

(并且 永远不能html" target="_blank">元素,因为数组的长度在创建后就不会改变)。

当您创建一个 空数组而不为其元素指定值时,它们默认为零值0,例如整数数组,null对象类型数组等。所以这:

int[] arrayOfThreeZeroes = new int[3];

与此相同:

int[] arrayOfThreeZeroes = { 0, 0, 0 };

(尽管这些值可以在以后重新分配;数组的长度不能更改,但是其元素可以更改)。



 类似资料:
  • 问题内容: 有两个链接 http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/composites.htm#LNPLS99981和 在Oracle中使用不同类型的PL /SQL集合的目的 通过引用以上两个链接,我有两个疑问 1.哪个是正确的嵌套表? 2.如果oracle文档是正确的,嵌套表和关联数组有什么区别? 问题答案: 这是另一个未知的区别

  • 问题内容: 考虑以下基础: 任何人只能活在堆里 阵列IS-A 和 IS-A 我发现自己很难回答这样一个简单的问题: JVM和 JVM内部 有什么区别吗?还是仅在“编译时”才有意义? 问题答案: 运行时有所不同。 是原始int值的数组。是一个“对象”数组,其中包含对Integer对象的引用。 最重要的实际差异:无法持有价值观。 但是我仍然很困惑:是否仅存储原始值?如果是这样,这是否意味着原始类型可以

  • 问题内容: 在有关reshape()函数的numpy手册中,它说 我的问题是: 什么是连续和不连续数组?它类似于C中的连续内存块,例如什么是连续内存块? 两者之间在性能上有什么区别吗?我们什么时候应该使用其中一个? 为什么转置会使数组不连续? 为什么会c.shape = (20)引发错误incompatible shape for a non-contiguous array? 感谢您的回答! 问

  • 本文向大家介绍清空一个数组的方式有哪些?它们有什么区别?相关面试题,主要包含被问及清空一个数组的方式有哪些?它们有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 方法1 这是完美的,因为这实际上创建了一个全新的(空)数组 仅当您仅通过数组的原始变量A引用数组时才使用此选项。 方法2 通过将现有数组的长度设置为 0 来清除该数组 会影响元数组 方法3 .splice()函数将返回一个包含所有已

  • 不同的藏品申报方式有什么区别? 我想知道以下两者之间的区别: 和 和

  • 如何从Jackson在中生成的json响应中排除所有空json对象、数组或空对象的数组? 我正在为一个客户端构建一个Spring Boot REST API。API向数据库发送请求,并且必须生成JSON响应。 DAO层发送本机SQL查询,并以列表形式接收巨大的DB结果。开发人员必须使用索引手动将此结果映射到Java对象(参见下面的代码) SQL查询返回大量空值(这些查询不能修改)。由于这些空值,只