这两个用着用着老是混淆或者忘记,今天写一下做个笔记,对比下两个判断方法的区别

isNotEmpty:

判断某字符串是否非空,等于!isEmpty(String str),这里不能排除空格字符

StringUtils.isNotEmpty("") = false
StringUtils.isNotEmpty(" ") = true
StringUtils.isNotEmpty("        ") = true
StringUtils.isNotEmpty("aaa") = true
StringUtils.isNotEmpty(" aaa") = true
StringUtils.isNotEmpty(null) = false

isNotBlank:

判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成,等于!isBlank(String str)

StringUtils.isNotBlank("") = false
StringUtils.isNotBlank(" ") = false
StringUtils.isNotBlank("        ") = false
StringUtils.isNotBlank("/bbb") = true
StringUtils.isNotBlank("bbb") = true
StringUtils.isNotBlank(" bbb ") = true
StringUtils.isNotBlank(null) = false

可以看出isNotEmpty()方法和isNotBlank()最大的区别就是对字符串中是否有空白字符的判断,isEmpty和isBlank同理

大多数情况下用的都是isNotBlank,但是不排除其他场景用isNotEmpty,这个取决你的使用场景

StringUtils的isNotEmpty,isNotBlank方法的区别的更多相关文章

  1. 【Java】【8】StringUtils中isNotEmpty和isNotBlank的区别

    前言: 1,StringUtils.isNotEmpty(str)和StringUtils.isNotBlank(str)都是用来做非空判断的 2,通常用isNotBlank 3,import org ...

  2. org.apache.commons.lang.StringUtils中常用的方法

    org.apache.commons.lang.StringUtils中常用的方法,这里主要列举String中没有,且比较有用的方法: 1. 检查字符串是否为空: static boolean isB ...

  3. StringUtils.split()和string.split()的区别

    场景 出于业务考虑,将多个字符串拼接起来时,使用的分隔符是;,;.如果要将这样一个拼接来的字符串分割成原本的多个字符串时,就需要使用到jdk自带的split()方法.不过因为公司的编程规范,改为使用了 ...

  4. ThinkPHP的D方法和M方法的区别

    M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...

  5. 正则表达式中的exec和match方法的区别

    正则表达式中的exec和match方法的区别 字符串的正则方法有:match().replace().search().split() 正则对象的方法有:exec().test() 1.match m ...

  6. Hibernate框架之get和load方法的区别

    我们在学习Hibernate框架时,经常会进行修改,删除操作,对于这些操作,我们都应该先加载对象,然后在执行或删除的操作,那么这里Hibernate提供了两种方法按照主键加载对象,也就是我要说的get ...

  7. [BS-27] 创建NSURL的几个方法的区别

    创建NSURL的几个方法的区别     URL的基本格式 = 协议://主机地址/路径 URL和Path的区别 * URL:统一资源定位符,格式 “协议+主机名称+路径”   例如:[NSURL UR ...

  8. Java线程中yield与join方法的区别

    长期以来,多线程问题颇为受到面试官的青睐.虽然我个人认为我们当中很少有人能真正获得机会开发复杂的多线程应用(在过去的七年中,我得到了一个机会),但是理解多线程对增加你的信心很有用.之前,我讨论了一个w ...

  9. OpenGL的glTexImage2D()与gluBuild2DMipmaps()的使用方法及区别

    OpenGL的glTexImage2D()与gluBuild2DMipmaps()的使用方法及区别 说明:两者的都是生成纹理,即:将载入的位图文件(*.bmp)转换成纹理贴图. 1.glTexImag ...

随机推荐

  1. # 机器学习算法总结-第八天(SKlearn中的kmeans/随机森林)

    随机森林 这篇好好看看怎么调参的 我调的最佳参数如下,准确率为0.8428671546929973,细节看上篇文章: alg = RandomForestClassifier(n_estimators ...

  2. c去除空格 小写转大写

    int isalnum(int c); //字母或数字 int isalpha(int c); //英文字母 int isascii(int c); //ASCII 码字符(0 到127) int i ...

  3. C++ 虚函数相关

    多态 C++的封装.继承和多态三大特性,封装没什么好说的,就是把事务属性和操作抽象成为类,在用类去实例化对象,从而对象可以使用操作/管理使用它的属性. 至于继承,和多态密不可分.基类可以进行派生,而派 ...

  4. gitlab中的几个常用界面(runner管理、gitlab-ci.yml管理、runner token管理、新建用户、拉用户入工程、拉用户入组、复制工程导入组)

    目录: 1.runner管理 2.gitlab-ci.yml管理 3.runner token管理 4.新建用户 5.拉用户入工程 6.拉用户入组 7.复制工程导入组 1.runners界面 http ...

  5. ORA-3136 问题处理

    Alert 日志报错: Wed May :: *********************************************************************** Fatal ...

  6. grafana根据不同prometheus server统计数据

    场景:由于采集的数据量巨大,所以部署了多台prometheus server服务器.根据业务领域分片采集,减轻prometheus server单节点的压力. 问题:grafana如何同时显示多数据源 ...

  7. JLINK固件烧写

    最近在使用uVision V5.14.0.0 的时候,由于我使用的Jlink是盗版的,导致软件总是退出,然后再网上找到了解决办法. 下面介绍解决办法: 参考: http://www.9mcu.com/ ...

  8. gojs Diagram Events(图表事件)

    GoJS涵盖了三种基本事件:DiagramEvents(图表事件).InputEvents(输入事件)以及ChangedEvents(变更事件).这一页我们讨论前两种事件:至于最后一种事件请见 Cha ...

  9. Kinect for Windows SDK开发入门(二):基础知识 上

    原文来自:http://www.cnblogs.com/yangecnu/archive/2012/03/31/KinectSDK_Application_Fundamentals_Part1.htm ...

  10. Maven生命周期——2

    Maven牛人说-Maven生命周期 http://juvenshun.iteye.com/blog/213959 Maven的三套生命周期: Clean Lifecycle 在进行真正的构建之前进行 ...