zoukankan      html  css  js  c++  java
  • StringUtils中 isNotEmpty 和isNotBlank的区别【java字符串判空】



    复制代码
    1 isNotEmpty(str)等价于 str != null && str.length > 0
    2 isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length > 0
    3 同理
    4 isEmpty 等价于 str == null || str.length == 0
    5 isBlank  等价于 str == null || str.length == 0 || str.trim().length == 0
    6 
    7 str.length > 0 && str.trim().length > 0  --->   str.length > 0
    复制代码
    复制代码
      1 StringUtils方法的操作对象是java.lang.String类型的对象,是JDK提供的String类型操作方法的补充,并且是null安全的(即如果输入参数String为null则不会抛出NullPointerException,而是做了相应处理,例如,如果输入为null则返回也是null等,具体可以查看源代码)。
      2 
      3 
      4 除了构造器,StringUtils中一共有130多个方法,并且都是static的,所以我们可以这样调用StringUtils.xxx()
      5 
      6 
      7 1. public static boolean isEmpty(String str)
      8 判断某字符串是否为空,为空的标准是str==null或str.length()==0
      9 下面是StringUtils判断是否为空的示例:
     10 StringUtils.isEmpty(null) = true
     11 StringUtils.isEmpty("") = true
     12 StringUtils.isEmpty(" ") = false //注意在StringUtils中空格作非空处理
     13 StringUtils.isEmpty(" ") = false
     14 StringUtils.isEmpty("bob") = false
     15 StringUtils.isEmpty(" bob ") = false
     16 
     17 
     18 2. public static boolean isNotEmpty(String str)
     19 判断某字符串是否非空,等于!isEmpty(String str)
     20 下面是示例:
     21 StringUtils.isNotEmpty(null) = false
     22 StringUtils.isNotEmpty("") = false
     23 StringUtils.isNotEmpty(" ") = true
     24 StringUtils.isNotEmpty(" ") = true
     25 StringUtils.isNotEmpty("bob") = true
     26 StringUtils.isNotEmpty(" bob ") = true
     27 
     28 
     29 3. public static boolean isBlank(String str)
     30 判断某字符串是否为空或长度为0或由空白符(whitespace)构成
     31 下面是示例:
     32 StringUtils.isBlank(null) = true
     33 StringUtils.isBlank("") = true
     34 StringUtils.isBlank(" ") = true
     35 StringUtils.isBlank(" ") = true
     36 StringUtils.isBlank("	 
     f 
    ") = true //对于制表符、换行符、换页符和回车符StringUtils.isBlank()均识为空白符
     37 StringUtils.isBlank("") = false //""为单词边界符
     38 StringUtils.isBlank("bob") = false
     39 StringUtils.isBlank(" bob ") = false
     40 
     41 
     42 4. public static boolean isNotBlank(String str)
     43 判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成,等于!isBlank(String str)
     44 下面是示例:
     45 StringUtils.isNotBlank(null) = false
     46 StringUtils.isNotBlank("") = false
     47 StringUtils.isNotBlank(" ") = false
     48 StringUtils.isNotBlank(" ") = false
     49 StringUtils.isNotBlank("	 
     f 
    ") = false
     50 StringUtils.isNotBlank("") = true
     51 StringUtils.isNotBlank("bob") = true
     52 StringUtils.isNotBlank(" bob ") = true
     53 
     54 
     55 其他方法介绍:
     56 5. public static String trim(String str)
     57 去掉字符串两端的控制符(control characters, char <= 32),如果输入为null则返回null
     58 下面是示例:
     59 StringUtils.trim(null) = null
     60 StringUtils.trim("") = ""
     61 StringUtils.trim(" ") = ""
     62 StringUtils.trim("  	 
     f 
     ") = ""
     63 StringUtils.trim(" 
    	ss ") = "ss"
     64 StringUtils.trim(" d d dd ") = "d d dd"
     65 StringUtils.trim("dd ") = "dd"
     66 StringUtils.trim(" dd ") = "dd"
     67 
     68 
     69 6. public static String trimToNull(String str)
     70 去掉字符串两端的控制符(control characters, char <= 32),如果变为null或"",则返回null
     71 下面是示例:
     72 StringUtils.trimToNull(null) = null
     73 StringUtils.trimToNull("") = null
     74 StringUtils.trimToNull(" ") = null
     75 StringUtils.trimToNull("  	 
     f 
     ") = null
     76 StringUtils.trimToNull(" 
    	ss ") = "ss"
     77 StringUtils.trimToNull(" d d dd ") = "d d dd"
     78 StringUtils.trimToNull("dd ") = "dd"
     79 StringUtils.trimToNull(" dd ") = "dd"
     80 
     81 
     82 7. public static String trimToEmpty(String str)
     83 去掉字符串两端的控制符(control characters, char <= 32),如果变为null或"",则返回""
     84 下面是示例:
     85 StringUtils.trimToEmpty(null) = ""
     86 StringUtils.trimToEmpty("") = ""
     87 StringUtils.trimToEmpty(" ") = ""
     88 StringUtils.trimToEmpty("  	 
     f 
     ") = ""
     89 StringUtils.trimToEmpty(" 
    	ss ") = "ss"
     90 StringUtils.trimToEmpty(" d d dd ") = "d d dd"
     91 StringUtils.trimToEmpty("dd ") = "dd"
     92 StringUtils.trimToEmpty(" dd ") = "dd"
     93 
     94 
     95 8. public static String strip(String str)
     96 去掉字符串两端的空白符(whitespace),如果输入为null则返回null
     97 下面是示例(注意和trim()的区别):
     98 StringUtils.strip(null) = null
     99 StringUtils.strip("") = ""
    100 StringUtils.strip(" ") = ""
    101 StringUtils.strip("  	 
     f 
     ") = ""
    102 StringUtils.strip(" 
    	ss ") = "ss "
    103 StringUtils.strip(" d d dd ") = "d d dd"
    104 StringUtils.strip("dd ") = "dd"
    105 StringUtils.strip(" dd ") = "dd"
    106 
    107 
    108 9. public static String stripToNull(String str)
    109 去掉字符串两端的空白符(whitespace),如果变为null或"",则返回null
    110 下面是示例(注意和trimToNull()的区别):
    111 StringUtils.stripToNull(null) = null
    112 StringUtils.stripToNull("") = null
    113 StringUtils.stripToNull(" ") = null
    114 StringUtils.stripToNull("  	 
     f 
     ") = ""
    115 StringUtils.stripToNull(" 
    	ss ") = "ss "
    116 StringUtils.stripToNull(" d d dd ") = "d d dd"
    117 StringUtils.stripToNull("dd ") = "dd"
    118 StringUtils.stripToNull(" dd ") = "dd"
    119 
    120 
    121 10. public static String stripToEmpty(String str)
    122 去掉字符串两端的空白符(whitespace),如果变为null或"",则返回""
    123 下面是示例(注意和trimToEmpty()的区别):
    124 StringUtils.stripToNull(null) = ""
    125 StringUtils.stripToNull("") = ""
    126 StringUtils.stripToNull(" ") = ""
    127 StringUtils.stripToNull("  	 
     f 
     ") = ""
    128 StringUtils.stripToNull(" 
    	ss ") = "ss "
    129 StringUtils.stripToNull(" d d dd ") = "d d dd"
    130 StringUtils.stripToNull("dd ") = "dd"
    131 StringUtils.stripToNull(" dd ") = "dd"
    复制代码
  • 相关阅读:
    包和模块的导入问题
    第9.6节 Python使用read函数读取文件内容
    第9.5节 Python的readlines读取文件内容及其参数hint使用分析
    第9.4节 Python中用readline读取二进制文件方式打开文件
    第9.3节 Python的文件行读取:readline
    第9.2节 Python的文件打开函数open详解
    第9.1节 Python的文件打开函数open简介
    第九章 Python文件操作
    第8.34节 《Python类中常用的特殊变量和方法》总结
    第8.33节 Python中__getattr__以及__getattr__与__ getattribute__的关系深入剖析
  • 原文地址:https://www.cnblogs.com/muyuchengguang/p/9335777.html
Copyright © 2011-2022 走看看