一、判断字符串是否为空

首先来看一下工具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}

原文:https://www.cnblogs.com/XtsLife/p/12496206.html

java 集合存储空字符窜_java中字符串对象和集合的判空相关推荐

  1. java 字符 几个字节_java中字符串占几个字节

    首先,char为Java的基本类型,基本类型所占的字节数是固定的,如int占4字节,double占8字节,这可以使得Java在不同的平台上所占类型固定,很好地保证了Java的可移植性.因此,Java中 ...

  2. java map key是否存在_java中如何判断map集合中是否存在key

    有两种方法可以判断map集合中是否存在某个key. 方法1:直接使用java api提供的containsKey(): 方法2:循环遍历,逐个比较. java相关视频推荐:java视频 具体实现代码如 ...

  3. java 集合 自动排序的_java中的自动排序集合 ---- 20160809

    TreeSet的实现: TreeMap实现: 需要注意: 1. 当利用comparator比较两个元素相等时,插入的时候会失败.而hashset是发现两个元素相等时,插入失败返回false.这说明可能 ...

  4. java string对象名称_java中常见对象——String

    字符串:就是由多个字符组成的一串数据.也可以看成是一个字符数组. A:字符串字面值"abc"也可以看成是一个字符串对象. B:字符串是常量,一旦被赋值,就不能被改变. 构造方法: ...

  5. java 字符串总结_Java中字符串(String)总结

    先说说JDK API: JDK中包含大量的API类库,所谓API(Application Programming Interface,应用程序编程接口,这些功能以类的形式封装). JDK API包含的 ...

  6. java string 字符个数字_java从字符串中提取数字

    string类函数的补充说明: trim()方法返回调用字符串对象的一个副本,但是所有起始和结尾的空格都被删除了,例子如下:String s=" Hello World ".tri ...

  7. java中String类是什么_Java中字符串的学习(一)String类的概述及常见方法使用

    转载请注明出处http://www.cnblogs.com/devtrees/p/4347079.html (拓展:Api:编程语言对外给我们提供的应用程序接口.) 一.概述: 我们平时上网发帖,帖子 ...

  8. java中字符 的含义 有什么作用_Java中字符串常见题之String相关讲解

    今天给大家带来的是在面试中经常被问到的一道题: 无论在Java还是Android中,String是一个很常见的类,但是大家真的很了解吗,我这里有几个题: 1. String str1 = " ...

  9. java内存堆和栈_java中堆,栈主要区别及内存存储

    java堆.栈.堆栈的区别 1.栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆. 2. 栈的优势是,存取速度 ...

最新文章

  1. php 不可以连接远程mysql数据库
  2. NoSql数据库使用半年后在设计上面的一些心得
  3. 企业实战(Jenkins+GitLab+SonarQube)_05_Jenkins创建管理员用户
  4. 传输分析_医院智能物流传输系统运营管理和效益分析
  5. DPG图片压缩技术和webp图片格式
  6. MTK:MVRAM操作
  7. 查找数组中特定元素_Leetcode 540 题 有序数组中的单一元素
  8. usbcan系列便携式can分析仪
  9. 谷歌浏览器安装Octotree插件
  10. 地图比例尺与空间分辨率之间的关系_分辨率与比例尺
  11. Android手机怎么找回微信好友,安卓手机微信怎么找回删除的好友?专业靠谱!...
  12. 新站如何解决收录问题
  13. Excel数据分类汇总与数据透视表
  14. 用一个div绘制背景流动网格特效
  15. CnnDroid 优化加速原理
  16. 关于ZXing二维码扫描的时候偶然出现数字问题
  17. 学成在线首页【前端知识】
  18. NNDL 实验六 卷积神经网络(3)LeNet实现MNIST
  19. 信号与系统第二版matlab作业,信号与系统课后matlab作业
  20. 数据挖掘:R语言k均值聚类

热门文章

  1. 为什么抢红包抢不过别人?学了这个算法就明白了!
  2. 一起睡了四年的大学舍友
  3. golang内存分配概述
  4. Windows系统下的 vbs病毒生成器使用方法!
  5. 基于OpenCV的实时睡意检测系统
  6. 【OpenCV 4开发详解】图像卷积
  7. 苹果应用上架审核规则介绍
  8. 如何使用C++ Builder 6.0连接Access数据库
  9. IE6 IE7 不支持 JSON
  10. 探究被Win7保留的100MB活动分区