JAVA中String非空判断方法总结 及 isEmpty() 的坑点,StringUtils 您所在的位置:网站首页 string类型不为空 JAVA中String非空判断方法总结 及 isEmpty() 的坑点,StringUtils

JAVA中String非空判断方法总结 及 isEmpty() 的坑点,StringUtils

2024-07-10 07:10| 来源: 网络整理| 查看: 265

常用非空判断方法

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

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

非空判断一

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

或:import org.springframework.util.StringUtils;

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

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

非空判断二

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

非空判断三

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

 

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

!str.isEmpty()

这个里面有一个坑点: String的isEmpty()方法,在String为null的时候,会出现空指针异常!!!! 因为,”” 和 new String(),会有占位符,也就是创建了对象,而null的时候,String 不会创建占位符。

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

import org.apache.commons.lang.StringUtils; public class test { public static void main(String[] args) { String a = null; String b = ""; String c = new String(); System.out.println(!a.isEmpty()); //报错java.lang.NullPointerException System.out.println(!b.isEmpty()); //false System.out.println(!c.isEmpty()); //false System.out.println("======================="); System.out.println(a!=null&&a.length()>0); //当null进行判断时,前半部分已经判断为false,所以后半部分不会报错 System.out.println(b!=null&&b.length()>0); System.out.println(c!=null&&c.length()>0); System.out.println("======================="); System.out.println(null!=a && !"".equals(a)); System.out.println(null!=b && !"".equals(b)); System.out.println(null!=c && !"".equals(c)); System.out.println("======================="); System.out.println(!StringUtils.isEmpty(a)); System.out.println(!StringUtils.isEmpty(b)); System.out.println(!StringUtils.isEmpty(c)); } }

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有