String判断非空最全解析

在校验一个String类型的变量是否为空时,通常存在3中情况:

  1. 是否为 null
  2. 是否为 ""
  3. 是否为空字符串(引号中间有空格)  如: "     "。

trim() 方法会从一个字符串的两端删除空白字符

常用非空判断方法

String为空的三种状态:null, ""和new String(),

判断某字符串为空的标准是 str==null 或 str.length()==0,

非空判断一

if(str!=null&&str.length()>0) { 执行代码 }

非空判断二

if(null != str && !"".equals(str)) { 执行代码 }

非空判断三 

导包:import org.apache.commons.lang3.StringUtils; 

或:import org.springframework.util.StringUtils;

If(!StringUtils.isEmpty(c)){ 执行代码 }

If(StringUtils.isNotEmpty(c)){ 执行代码 }


 

String.isEmpty() 方法使用的坑点

String对象中有一个isEmpty的方法判断是否为空,其实isEmpty完全等同于string.length()==0,注意如果String本身是null,那么使用string.isEmpty()会报空指针异常(NullPointerException)判断一个String为空的最安全的方法,还是string ==null || string.isEmpty() 

因为,"" 和 new String(),会有占位符,也就是创建了对象,而null的时候,String 不会创建占位符。

更通俗的说就是:”” 和new String() 的时候,String是有长度的,只是长度为0,而null没有长度。

非空判断四

if(string!=null && !string.isEmpty() ) { 执行代码 }

非空判断五(最全面,安全的方法)

if( string!=null && !string.isBlank()  ) { 执行代码 }
或者用方法三: StringUtils.isEmpty()

StringUtils的 isEmpty(String str) 和isBlank(String str)

  1. isEmpty(str)仅仅是判断和长度为0字符串
  2. isBlank(str)判断的是,长度为0,空白字符(包括空格,制表符\t,换行符\n,换页符\f,回车\r)组成的字符串。

String的 isEmpty() 和isBlank()

  1. isEmpty仅仅是判断长度为0字符串
  2. isBlank判断的是长度为0,空白字符(包括空格,制表符\t,换行符\n,换页符\f,回车\r)组成的字符串。

 

 

 

 

  • 8
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值