Java StringUtils 判断String类型是否为空或非空

摘要:
1.publicstaticooleanisEmpty确定字符串是否为空。空的条件是str==null或str.length()==0。以下是一个示例:StringUtils。isEmpty=trueStringUtils。isEmpty(“”)=trueStringUtils。isEmpty(“”)=false//请注意,非空处理StringUtils。isEmpty(“”)=false StringUtils。isEmpty=false StringUtils。isEmpty=false 2。publicstatics布尔值isNotEmpty确定字符串是否为空,等于!

StringUtils 方法的操作对象是 Java.lang.String 类型的对象,是 JDK 提供的 String 类型操作方法的补充,并且是 null 安全的(即如果输入参数 String 为 null 则不会抛出 NullPointerException ,而是做了相应处理,例如,如果输入为 null 则返回也是 null 等,具体可以查看源代码)。

除了构造器,StringUtils 中一共有130多个方法,并且都是 static 的,所以我们可以这样调用 StringUtils.xxx()

导包信息:org.apache.commons.lang3.StringUtils

下面分别对一些常用方法做简要介绍:

括号中填写需要做判断的参数。

1. public static boolean isEmpty(String str) 
   判断某字符串是否为空,为空的标准是 str==null 或 str.length()==0 
   下面是示例:

StringUtils.isEmpty(null) = true
StringUtils.isEmpty("") = true 
StringUtils.isEmpty(" ") = false //注意在 StringUtils 中空格作非空处理
StringUtils.isEmpty("   ") = false
StringUtils.isEmpty("bob") = false
StringUtils.isEmpty(" bob ") = false
2. public static boolean isNotEmpty(String str) 
   判断某字符串是否非空,等于 !isEmpty(String str) 
   下面是示例:

StringUtils.isNotEmpty(null) = false
StringUtils.isNotEmpty("") = false
StringUtils.isNotEmpty(" ") = true
StringUtils.isNotEmpty("         ") = true
StringUtils.isNotEmpty("bob") = true
StringUtils.isNotEmpty(" bob ") = true
3. public static boolean isBlank(String str) 
   判断某字符串是否为空或长度为0或由空白符(whitespace) 构成
   下面是示例:

StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
StringUtils.isBlank("        ") = true
StringUtils.isBlank(" f ") = true   //对于制表符、换行符、换页符和回车符

StringUtils.isBlank()   //均识为空白符
StringUtils.isBlank("") = false   //""为单词边界符
StringUtils.isBlank("bob") = false
StringUtils.isBlank(" bob ") = false
4. public static boolean isNotBlank(String str) 
   判断某字符串是否不为空且长度不为0且不由空白符(whitespace) 构成,等于 !isBlank(String str) 
   下面是示例:

StringUtils.isNotBlank(null) = false
StringUtils.isNotBlank("") = false
StringUtils.isNotBlank(" ") = false
StringUtils.isNotBlank("         ") = false
StringUtils.isNotBlank(" f ") = false
StringUtils.isNotBlank("") = true
StringUtils.isNotBlank("bob") = true
StringUtils.isNotBlank(" bob ") = true
5. public static String trim(String str) 
   去掉字符串两端的控制符(control characters, char <= 32) , 如果输入为 null 则返回null 
   下面是示例:

StringUtils.trim(null) = null
StringUtils.trim("") = ""
StringUtils.trim(" ") = ""
StringUtils.trim(" f     ") = ""
StringUtils.trim("     ss   ") = "ss"
StringUtils.trim(" d   d dd     ") = "d   d dd"
StringUtils.trim("dd     ") = "dd"
StringUtils.trim("     dd       ") = "dd"
6. public static String trimToNull(String str) 
   去掉字符串两端的控制符(control characters, char <= 32) ,如果变为 null 或"",则返回 null 
   下面是示例:

StringUtils.trimToNull(null) = null
StringUtils.trimToNull("") = null
StringUtils.trimToNull(" ") = null
StringUtils.trimToNull("     f     ") = null
StringUtils.trimToNull("     ss   ") = "ss"
StringUtils.trimToNull(" d   d dd     ") = "d   d dd"
StringUtils.trimToNull("dd     ") = "dd"
StringUtils.trimToNull("     dd       ") = "dd"
7. public static String trimToEmpty(String str) 
   去掉字符串两端的控制符(control characters, char <= 32) ,如果变为 null 或 "" ,则返回 "" 
   下面是示例:

StringUtils.trimToEmpty(null) = ""
StringUtils.trimToEmpty("") = ""
StringUtils.trimToEmpty(" ") = ""
StringUtils.trimToEmpty("     f     ") = ""
StringUtils.trimToEmpty("     ss   ") = "ss"
StringUtils.trimToEmpty(" d   d dd     ") = "d   d dd"
StringUtils.trimToEmpty("dd     ") = "dd"
StringUtils.trimToEmpty("     dd       ") = "dd"
8. public static String strip(String str) 
   去掉字符串两端的空白符(whitespace) ,如果输入为 null 则返回 null 
   下面是示例(注意和 trim() 的区别):

StringUtils.strip(null) = null
StringUtils.strip("") = ""
StringUtils.strip(" ") = ""
StringUtils.strip("     f     ") = ""
StringUtils.strip("     ss   ") = "ss   "
StringUtils.strip(" d   d dd     ") = "d   d dd"
StringUtils.strip("dd     ") = "dd"
StringUtils.strip("     dd       ") = "dd"
9. public static String stripToNull(String str) 
   去掉字符串两端的空白符(whitespace) ,如果变为 null 或"",则返回 null 
   下面是示例(注意和 trimToNull() 的区别):

StringUtils.stripToNull(null) = null
StringUtils.stripToNull("") = null
StringUtils.stripToNull(" ") = null
StringUtils.stripToNull("     f     ") = ""
StringUtils.stripToNull("     ss   ") = "ss   "
StringUtils.stripToNull(" d   d dd     ") = "d   d dd"
StringUtils.stripToNull("dd     ") = "dd"
StringUtils.stripToNull("     dd       ") = "dd"
10. public static String stripToEmpty(String str) 
    去掉字符串两端的空白符(whitespace) ,如果变为 null 或"" ,则返回"" 
    下面是示例(注意和 trimToEmpty() 的区别):

StringUtils.stripToNull(null) = ""
StringUtils.stripToNull("") = ""
StringUtils.stripToNull(" ") = ""
StringUtils.stripToNull("     f     ") = ""
StringUtils.stripToNull("     ss   ") = "ss   "
StringUtils.stripToNull(" d   d dd     ") = "d   d dd"
StringUtils.stripToNull("dd     ") = "dd"
StringUtils.stripToNull("     dd       ") = "dd"
以下方法只介绍其功能,不再举例:
11. public static String strip(String str, String stripChars) 
   去掉 str 两端的在 stripChars 中的字符。
   如果 str 为 null 或等于"" ,则返回它本身;
   如果 stripChars 为 null 或"" ,则返回 strip(String str) 。

12. public static String stripStart(String str, String stripChars) 
    和11相似,去掉 str 前端的在 stripChars 中的字符。

13. public static String stripEnd(String str, String stripChars) 
    和11相似,去掉 str 末端的在 stripChars 中的字符。

14. public static String[] stripAll(String[] strs) 
    对字符串数组中的每个字符串进行 strip(String str) ,然后返回。
    如果 strs 为 null 或 strs 长度为0,则返回 strs 本身

15. public static String[] stripAll(String[] strs, String stripChars) 
    对字符串数组中的每个字符串进行 strip(String str, String stripChars) ,然后返回。
    如果 strs 为 null 或 strs 长度为0,则返回 strs 本身

16. public static boolean equals(String str1, String str2) 
    比较两个字符串是否相等,如果两个均为空则也认为相等。

17. public static boolean equalsIgnoreCase(String str1, String str2) 
    比较两个字符串是否相等,不区分大小写,如果两个均为空则也认为相等。

18. public static int indexOf(String str, char searchChar) 
    返回字符 searchChar 在字符串 str 中第一次出现的位置。
    如果 searchChar 没有在 str 中出现则返回-1,
    如果 str 为 null 或 "" ,则也返回-1

19. public static int indexOf(String str, char searchChar, int startPos) 
    返回字符 searchChar 从 startPos 开始在字符串 str 中第一次出现的位置。
    如果从 startPos 开始 searchChar 没有在 str 中出现则返回-1,
    如果 str 为 null 或 "" ,则也返回-1

20. public static int indexOf(String str, String searchStr) 
    返回字符串 searchStr 在字符串 str 中第一次出现的位置。
    如果 str 为 null 或 searchStr 为 null 则返回-1,
    如果 searchStr 为 "" ,且 str 为不为 null ,则返回0,
    如果 searchStr 不在 str 中,则返回-1

21. public static int ordinalIndexOf(String str, String searchStr, int ordinal) 
    返回字符串 searchStr 在字符串 str 中第 ordinal 次出现的位置。
    如果 str=null 或 searchStr=null 或 ordinal<=0 则返回-1
    举例(*代表任意字符串):

StringUtils.ordinalIndexOf(null, *, *) = -1
StringUtils.ordinalIndexOf(*, null, *) = -1
StringUtils.ordinalIndexOf("", "", *) = 0
StringUtils.ordinalIndexOf("aabaabaa", "a", 1) = 0
StringUtils.ordinalIndexOf("aabaabaa", "a", 2) = 1
StringUtils.ordinalIndexOf("aabaabaa", "b", 1) = 2
StringUtils.ordinalIndexOf("aabaabaa", "b", 2) = 5
StringUtils.ordinalIndexOf("aabaabaa", "ab", 1) = 1
StringUtils.ordinalIndexOf("aabaabaa", "ab", 2) = 4
StringUtils.ordinalIndexOf("aabaabaa", "bc", 1) = -1
StringUtils.ordinalIndexOf("aabaabaa", "", 1) = 0
StringUtils.ordinalIndexOf("aabaabaa", "", 2) = 0
22. public static int indexOf(String str, String searchStr, int startPos) 
    返回字符串 searchStr 从 startPos 开始在字符串 str 中第一次出现的位置。
    举例(*代表任意字符串):

StringUtils.indexOf(null, *, *) = -1
StringUtils.indexOf(*, null, *) = -1
StringUtils.indexOf("", "", 0) = 0
StringUtils.indexOf("aabaabaa", "a", 0) = 0
StringUtils.indexOf("aabaabaa", "b", 0) = 2
StringUtils.indexOf("aabaabaa", "ab", 0) = 1
StringUtils.indexOf("aabaabaa", "b", 3) = 5
StringUtils.indexOf("aabaabaa", "b", 9) = -1
StringUtils.indexOf("aabaabaa", "b", -1) = 2
StringUtils.indexOf("aabaabaa", "", 2) = 2
StringUtils.indexOf("abc", "", 9) = 3
23. public static int lastIndexOf(String str, char searchChar) 
    基本原理同18

24. public static int lastIndexOf(String str, char searchChar, int startPos) 
    基本原理同19

25. public static int lastIndexOf(String str, String searchStr) 
    基本原理同20

26. public static int lastIndexOf(String str, String searchStr, int startPos)

免责声明:文章转载自《Java StringUtils 判断String类型是否为空或非空》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Python进阶07 函数对象【转】angular.js下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

apache StringUtils 工具类

// org.apache.commons.lang3.StringUtils // 1.IsEmpty/IsBlank - checks if a String contains text 检查是否为空 boolean empty = StringUtils.isEmpty(""); // 调用cs == null || cs.length()...

Python Flask如何开发以太坊智能合约

将数据存储在数据库中是任何软件应用程序不可或缺的一部分。无论如何控制该数据库都有一个该数据的主控。区块链技术将数据存储到区块链网络内的区块中。因此,只要某个节点与网络同步,它们就会获得区块中数据的副本。因此,该技术中没有特定的数据主控。 在本教程中,我们将编写一份智能合约(我将进一步解释),以便在区块链上保留用户数据。我们将使用python web3(we...

[StringUtil ] isEmpty VS isBlank

昨天才意识到这两个的存在。 Blank(空字符串 blank) StringUtils.isNoneBlank(null) = false StringUtils.isNoneBlank(null, "foo") = false StringUtils.isNoneBlank(null, null)...

Java编程技巧:if-else优化实践总结归纳

文/朱季谦 说实话,其实我很讨厌在代码里大量使用if-else,一是因为该类代码执行方式属于面向过程的,二嘛,则是会显得代码过于冗余。这篇笔记,主要记录一些自己在工作实践当中针对if-else的优化心得,将会不定期地长期更新。 一、使用策略枚举来优化if-else 看到网上蛮多人推荐使用策略模式来优化if-else,但我总觉得,搞一堆策略类来优化大批量if...

c++ 判断是否有Emoji表情

参考:https://blog.csdn.net/muwuxin/article/details/88896188 https://bbs.csdn.net/topics/391989473 思路:获取输入的Unicode编码,根据编码判断是否是Emoji表情 Emoji表情对应的Unicode编码可以从https://www.wiki-wiki.top/...

StringUtils.hasText()

1、org.springframework.util包下的 StringUtils.hasText()StringUtils.hasText():如果字符序列不为 null 值,并且字符序列的长度大于 0 ,并且不含有空白字符序列,则返回 true public static voidmain(String[] args) { Boolea...