错了,这个对象已经分配了内存,不是空的,用System.out.println(item)打印就知道已经存在地址,如果是空,打印null
判断一个对象是否为空,就是按那个条件判断,没有错,System.out.println()是控制台比较实用的调试,测试方法
首先来看一下工具StringUtils的判断方法:
一种是org.apache.commons.lang3包下的;
另一种是org.springframework.util包下的。这两种StringUtils工具类判断对象是否为空是有差距的:
StringUtils.isEmpty(CharSequence cs)//org.apache.commons.lang3包下的StringUtils类,判断是否为空的方法参数是字符序列类,也就是String类型StringUtils.isEmpty(Object str)//而org.springframework.util包下的参数是Object类,也就是不仅仅能判断String类型,还能判断其他类型,比如Long等类型。12345从上面的例子可以看出第二种的StringUtils类更实用。
下面来看一下org.apache.commons.lang3的StringUtils.isEmpty(CharSequence cs)源码:public static boolean isEmpty(final CharSequence cs) { return cs == null || cs.length() == 0
接下来是org.springframework.util的StringUtils.isEmpty(Object str)源码:public static boolean isEmpty(Object str) { return (str == null || "".equals(str))
基本上判断对象是否为空,StringUtils.isEmpty(Object str)这个方法都能搞定。
接下来就是判断数组是否为空
list.isEmpty()//返回boolean类型。