栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java中长度为0的数组与null的区别

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java中长度为0的数组与null的区别

(无论使用哪种类型的数组,数组标识符其实只是一个引用,指向在堆中创建的一个真实对象  Int[] A =new int[10];new 一下就是实例化了,开辟了内存空间,基本数据类型的元素会被赋初始值,数组建立后长度不能改变,但是还是可以重新赋值)

int[] array = new int[0];     // 定义一个长度为 0 的数组 / 空数组

Sring[] arr = new String[0];  // 定义一个长度为 0 的数组 / 空数组

长度为 0 的数组 / 空数组 并不是 null

有如下两个变量定义:

1 int[] zero = new int[0];

2 int[] nil = null; 

这两种定义有什么区别呢?

 zero是一个长度为0的数组,我们称之为“空数组”,空数组也是一个对象,只是包含元素个数为0。

 nil是一个数组类型的空引用。

 假设一个方法返回一个数组,如果它返回null,则调用方法必须先判断是否返回null,才能对放回数组进一步处理,而如果返回空数组,则无须null引用检查。鉴于此,返回数组的方法在没有结果时我们通常返回空数组,而不是null,这样做对于函数调用者的处理比较方便。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/708913.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号