黑马程序员技术交流社区

标题: 怎么判断数组为空还是为null? [打印本页]

作者: SanYong    时间: 2015-2-3 16:23
标题: 怎么判断数组为空还是为null?
怎么判断数组为空还是为null?

作者: 无力去闹    时间: 2015-2-3 16:35
空 和 null有什么不同吗?
作者: SanYong    时间: 2015-2-3 18:02
无力去闹 发表于 2015-2-3 16:35
空 和 null有什么不同吗?

如int[] arr1={};
   int[] arr2=null;
作者: 艺多不压身丶    时间: 2015-2-3 18:18
一个是系统帮你定的。一个是你自己定的。......
作者: 边晓炎    时间: 2015-2-3 19:33
这个是数组为空!一个是指引为空!!
作者: godmmm    时间: 2015-2-3 20:54
判断为空,用数组的length方法
判断为null,用if判断
  1. public class Demo {

  2.         public static void main(String[] args) {
  3.                 // TODO 自动生成的方法存根
  4.                 int[] arr1=new int[]{};
  5.                 int[] arr2=null;
  6.                 System.out.println(arr1.length==0);
  7.                 System.out.println(arr2==null);
  8.         }

  9. }

  10. true
  11. ture
复制代码

作者: Novice.Jin    时间: 2015-2-3 22:53
汉语叫为空

java语言叫为NULL

do you know?
作者: 小鹏_sJQBO    时间: 2015-2-3 23:00
null是让数组(变量)不指向任何数组实体;数组为空是说数组实体为空吧?但是数组一旦形成实体就是有初始化值的。不知道我的理解对不对!请大大评判!
作者: 466273082    时间: 2015-2-3 23:11
有区别吗???
作者: kk8023    时间: 2015-2-3 23:12
一个表示没有元素,一个是在堆内存中没有指向
作者: zhengyijun    时间: 2015-2-4 00:49
数组为空就是数组元素个数为0;数组为null就是没有指向任何数组实体。
作者: O(∩_∩)O~wen    时间: 2015-2-4 07:28
{:3_54:}{:3_54:}{:3_54:}{:3_54:}{:3_54:}
作者: yueLife_1993    时间: 2015-2-4 14:42
我感觉这个不是一样的么
作者: 大奔    时间: 2015-2-4 14:56
用数组的length判断
作者: 大奔    时间: 2015-2-4 14:57
O(∩_∩)O~wen 发表于 2015-2-4 07:28

同意楼主说法
作者: huangchunwei    时间: 2015-2-4 16:32
前者是数组中没有元素,既是长度0,但是有指向;后者是数组指向为空,没有具体的实体指向。
作者: ㏒假™面具    时间: 2015-2-7 02:13
一个有指向,但长度为0,一个没有指向
作者: BEIKOU    时间: 2015-2-7 05:50
学习了,
作者: 万合天宜    时间: 2015-2-7 13:02
数组为空表示的是数组的具体值为空,什么都没有,例如:int[] arr = {};
作者: 万合天宜    时间: 2015-2-7 13:05
数组为null,表示的是数组不指向任何实体,不指向实体它就没有方法和属性,如果调用数组的length属性就会发生空指针异常。
作者: lwh316658735    时间: 2015-2-7 13:23
本帖最后由 lwh316658735 于 2015-2-7 13:26 编辑

if都可以判断
作者: 邓士林    时间: 2015-2-7 16:53
赞成,学习
作者: duxubo    时间: 2015-2-7 21:06
int arr=new int[0]; 数组长度为空
int arr=null ;空指针




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2