StringUtils.isEmpty用法[通俗易懂]

StringUtils.isEmpty用法[通俗易懂]转载出处:http://blog.csdn.net/ocean20/article/details/6674077StringUtils方法的操作对象是Java.lang.String类型的对象,是JDK提供的String类型操作方法的补充,并且是null安全的(即如果输入参数String为null则不会抛出NullPointerException,而是做了相应…

大家好,又见面了,我是你们的朋友全栈君。

 转载出处:http://blog.csdn.net/ocean20/article/details/6674077

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

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

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

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

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(“\t \n \f \r”) = true   //对于制表符、换行符、换页符和回车符

      StringUtils.isBlank()   //均识为空白符
      StringUtils.isBlank(“\b”) = false   //”\b”为单词边界符
      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(“\t \n \f \r”) = false
      StringUtils.isNotBlank(“\b”) = 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(” \b \t \n \f \r    “) = “”
      StringUtils.trim(”     \n\tss   \b”) = “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(”     \b \t \n \f \r    “) = null
      StringUtils.trimToNull(”     \n\tss   \b”) = “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(”     \b \t \n \f \r    “) = “”
      StringUtils.trimToEmpty(”     \n\tss   \b”) = “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(”     \b \t \n \f \r    “) = “\b”
      StringUtils.strip(”     \n\tss   \b”) = “ss   \b”
      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(”     \b \t \n \f \r    “) = “\b”
      StringUtils.stripToNull(”     \n\tss   \b”) = “ss   \b”
      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(”     \b \t \n \f \r    “) = “\b”
      StringUtils.stripToNull(”     \n\tss   \b”) = “ss   \b”
      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)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131716.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Pytest(6)重复运行用例pytest-repeat[通俗易懂]

    Pytest(6)重复运行用例pytest-repeat[通俗易懂]前言平常在做功能测试的时候,经常会遇到某个模块不稳定,偶然会出现一些bug,对于这种问题我们会针对此用例反复执行多次,最终复现出问题来。自动化运行用例时候,也会出现偶然的bug,可以针对单个用例,

  • 史上最全Java多线程面试题及答案[通俗易懂]

    史上最全Java多线程面试题及答案[通俗易懂]这篇文章主要是对多线程的问题进行总结的,因此罗列了40个多线程的问题。这些多线程的问题,有些来源于各大网站、有些来源于自己的思考。可能有些问题网上有、可能有些问题对应的答案也有、也可能有些各位网友也都看过,但是本文写作的重心就是所有的问题都会按照自己的理解回答一遍,不会去看网上的答案,因此可能有些问题讲的不对,能指正的希望大家不吝指教。 1、多线程有什么用?一个可能在很多人看来…

  • ScriptManager.RegisterStartupScript()方法

    ScriptManager.RegisterStartupScript()方法如果页面中不用Ajaxcs中运行某段js代码方式可以是:Page.ClientScript.RegisterStartupScript(Page.GetType(),””,”window.open(‘default2.aspx’)”);如果页面中使用了Ajax则上述代码即使执行也无效果。对这种情况我们通常采用:ScriptManager.RegisterStartupScr

  • Java工具开发手记

    Java工具开发手记前言这段时间沉迷于工具开发方面,个人也比较倾向于gui的工具。使用在开发过程中避免的就是gui的一些框体,这里主要用于记录一些关键点。工具开发其实在前段时间编写的14882

    2021年12月13日
  • pycharm社区版安装教程 2019_pycharm安装教程2020社区版

    pycharm社区版安装教程 2019_pycharm安装教程2020社区版首先进入JetBrain的官网(国内正常访问):https://www.jetbrains.com/第一眼看到的界面如下图所示:然后找到我们的Pycharm专题页:进入Pycharm的专题页面之后,点击下载按钮(这里有两个按钮,点任何一个都行):然后进入到真正的下载页面你会发现有两个版本的Pycharm,一个是Professional版本(收费),另外一个是Community版本是永久免费的,而且后续升级什么的也都是免费的,我们下载这个就行了,Comm…

  • 突破思维的障碍

    突破思维的障碍译者的话   在众多的讲述思维及创造性的书中,这是一本普通的小册子,但它却是吸引人的。作者用妙趣横生而又日常可见的素材向我们娓娓叙说了人人都会关心的问题,即我们是否意识到自己的思维障碍,怎样克服它,让自己变得更富有创造活力。   这本书在美国一版再版,风靡一时,拥有广泛的读者,无论是从事研究工作的高级学者、研究人员,还是从事行政、工商和管理活动的人士或普通学生。相信本书与中国读者的见面

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号