首先来看一下工具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等类型。

从上面的例子可以看出第二种的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类型。

判断集合是否为空

例1: 判断集合是否为空:

CollectionUtils.isEmpty(null): true

CollectionUtils.isEmpty(new ArrayList()): true

CollectionUtils.isEmpty({a,b}): false

例2:判断集合是否不为空:

CollectionUtils.isNotEmpty(null): false

CollectionUtils.isNotEmpty(new ArrayList()): false

CollectionUtils.isNotEmpty({a,b}): true

2个集合间的操作:

集合a: {1,2,3,3,4,5}

集合b: {3,4,4,5,6,7}

CollectionUtils.union(a, b)(并集): {1,2,3,3,4,4,5,6,7}

CollectionUtils.intersection(a, b)(交集): {3,4,5}

CollectionUtils.disjunction(a, b)(交集的补集): {1,2,3,4,6,7}

CollectionUtils.disjunction(b, a)(交集的补集): {1,2,3,4,6,7}

CollectionUtils.subtract(a, b)(A与B的差): {1,2,3}

CollectionUtils.subtract(b, a)(B与A的差): {4,6,7}

以上所述是小编给大家介绍的Java中判断对象是否为空的方法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

java判断一个对象是否为空_Java中判断对象是否为空的方法的详解相关推荐

  1. java判断集合为空_Java中判断集合类为空的方法

    *****需要引入Spring的核心Jar包***** 工具类: org.springframework.util.CollectionUtils 方法: public static boolean ...

  2. java char 打印_Java中char[]输出不是内存地址的原因详解

    前言 Java中共有八种基本数据类型:byte,int,short,long,float,double,char,boolean. 计算机中的基础数据单位是bit, 1byte=8bit. 数据类型 ...

  3. html引入php文件中的函数,手把手教你在html中引入另一个html文件的方法(详解)...

    html中引入调用另一个html的方法,尝试了好几种,都列出来: 其中第一种是最好的,其他的方法,可以尝试看看,是不是适合你当前项目 一.p+$("#page1").load(&q ...

  4. java怎么判断string数组是否为空_java中判断一个数组或者字符串是否为空

    int [] array 数组为空的条件: if( array==null||array.length==0) String str 字符串为空的条件: if(str == null || str.l ...

  5. java怎么判断一个char是汉字_JAVA中判断char是否是中文的几种方法

    展开全部 对照最新版本的 Unicode (最少是62616964757a686964616fe59b9ee7ad9431333335343330 6.0  版本,不知道现在是否有 7.0) 里面找从 ...

  6. java 判断字符串是否包含字母_Java中判断某一字符串是否包含数字、字母和中文...

    importjava.util.regex.Matcher;importjava.util.regex.Pattern;public classStrValidate {//纯数字 private s ...

  7. java 路径不存在则创建_java中判断目录是否存在,若不存在则创建

    知识补充: endsWith()方法用于测试字符串是否以指定的后缀结束. 更多学习视频推荐:java语言入门 实例://String dirName = "D:/work/temp/temp ...

  8. java增强for循环_Java中增强for循环的实现原理和坑详解

    前言 引入增强for循环的原因:在JDK5以前的版本中,遍历数组或集合中的元素,需要先获得数组的长度或集合的迭代器,比较麻烦. JDK5中定义了一种新的语法----增强for循环,以简化此类操作.增强 ...

  9. java达达租车接口_Java实现一个达达租车系统的步骤详解

    本文介绍的是利用java编写一个控制台版的"达达租车系统",下面话不多说了,来看看详细实现方法吧. 实现目标 java编写一个控制台版的"达达租车系统" 实现功 ...

最新文章

  1. mysql+8.0+新特性_MySQL 8.0的一些新特性汇总大全
  2. 【MyBatis框架】MyBatis入门程序第一部分
  3. 【BZOJ】1031: [JSOI2007]字符加密Cipher(后缀数组)
  4. linux gcc编译错误:statically linked applications requires at runtime the shared libraries
  5. [HDU1394]Minimum Inversion Number
  6. 【Docker】docker attach 卡住的问题
  7. BZOJ1050 [HAOI2006]旅行
  8. C++---肿瘤面积
  9. 人工智能和机器学习的前世今生
  10. python基础知识2——基本的数据类型——整型,长整型,浮点型,字符串
  11. 微信小程序视图层WXML_小程序事件
  12. linux检查nfs服务,Linux-nfs服务
  13. 电子烟行业的十大进销存软件app,强推第一个
  14. PR/AE基础入门操作
  15. crm系统服务器要求,crm系统需要配备什么云服务器
  16. 三点式女青年和免费的笔记本电脑
  17. Scheme语言学习---求解三个数中其中两个较大数的和
  18. linux网络驱动 poll,网络 – Linux网络驱动程序中的并发:probe()VS ndo_open(),ndo_start_xmit()VS NAPI poll()...
  19. 报表工具使用教程-FineReport决策报表导出Plus
  20. Oracle误删除表空间的恢复

热门文章

  1. Vue mixins(混入) 附代码示例详解
  2. SQLServer之ISO游标使用
  3. POJ 1236 Network of Schools(tarjan)
  4. BZOJ2331:[SCOI2011]地板——题解
  5. HTML5 监听当前位置
  6. PL/SQL集合类型的整理学习
  7. php后台开发(二)Laravel框架
  8. EIGRP注入默认路由
  9. C#中使用Monitor类、Lock和Mutex类来同步多线程的执行(转)
  10. css:z-index