StringUtils工具类

1、 public static boolean isEmpty(String str)

判断某字符串是否为空

3、public static boolean isBlank(String str)
判断某字符串是否为空或长度为0或由空白符(whitespace)构成

4、 public static boolean isNotBlank(String str)
判断某字符串是否不为空且长度不为0且不由空白符(whitespace)构成,
等于!isBlank(String str)

5、 public static String trim(String str)
去掉字符串两端的控制符
如果输入为null则返回null

6、public static String trimToNull(String str)
去掉字符串两端的控制符
如果变为null或””,则返回null

7、public static String trimToEmpty(String str)
去掉字符串两端的控制符
如果变为null或””,则返回””

8、public static String strip(String str)
去掉字符串两端的空白符(whitespace),
如果输入为null则返回null
(注意和trim()的区别):

9、public static String stripToNull(String str)
去掉字符串两端的空白符(whitespace),
如果变为null或””,则返回null
(注意和trimToNull()的区别):

10、public static String stripToEmpty(String str)
去掉字符串两端的空白符(whitespace),
如果变为null或””,则返回””
(注意和trimToEmpty()的区别):

11、public static String strip(String str, String stripChars)
去掉str两端的在stripChars中的字符。
如果str为null或等于””,则返回它本身;
如果stripChars为null或””,则返回strip(String str)

StringUtils.strip(“000000134_76539000″,”0″)=”134_76539”

12、 stripStart(String str,String stripChars) 去除str 前端在stripChars中的字符

13、 stripEnd(String str,String stripChars) 去除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

22、public static int indexOf(String str, String searchStr, int startPos)
返回字符串searchStr从startPos开始在字符串str中第一次出现的位置。
举例(*代表任意字符串):

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)
基本原理同22。

27、public static boolean contains(String str, char searchChar)
判断字符串str中是否包含字符searchChar。
如果str为null或””,返回false;
如果searchChar不在str中,返回false。

28、public static boolean contains(String str, String searchStr)
判断字符串str是否包含字符串searchStr。
如果str为null或searchStr为null,返回false;
如果str为””,并且searchStr为””,返回true

29、public static boolean containsIgnoreCase(String str, String searchStr)
判断字符串str是否包含字符串searchStr,不区分大小写。
和28类似。

30、public static int indexOfAny(String str, char[] searchChars)
找出字符数组searchChars中的字符第一次出现在字符串str中的位置。
如果字符数组中的字符都不在字符串中,则返回-1
如果字符串为null或””,则返回-1
举例(*表示任意):

31、public static int indexOfAny(String str, String searchChars)
找出字符串searchChars中的字符第一次出现在字符串str中的位置。
如果字符串searchChars中的字符都不在字符串str中,则返回-1
如果searchChars或str为null或为””,则返回-1
举例(*表示任意):

32、public static boolean containsOnly(String str, char[] valid)
判断是否字符串str仅包含字符数组valid中的字符,即字符串中的字符是否都在字符数组中。
如果str为null,则返回false;如果str为””,则返回true
举例(*表示任意):

33、public static boolean containsOnly(String str, String validChars)
判断是否字符串str仅包含字符串validChars中的字符,
即字符串str中的字符是否都在字符串validChars中。
和32类似,举例(*表示任意):

34、public static String substring(String str, int start)
得到字符串str的子串。
如果start小于0,位置是从后往前数的第|start|个
如果str为null或””,则返回它本身
举例(*表示任意):

35、public static String substring(String str, int start, int end)
得到字符串str的子串。
如果start小于0,位置是从后往前数的第|start|个,
如果end小于0,位置是从后往前数的第|end|个,
如果str为null或””,则返回它本身
举例(*表示任意):

36、public static String left(String str, int len)
得到字符串str从左边数len长度的子串。
如果str为null或为””,则返回它本身
如果len小于0,则返回””
举例(*表示任意):

37、public static String right(String str, int len)
得到字符串str从右边数len长度的子串。
如果str为null或为””,则返回它本身
如果len小于0,则返回””
举例(*表示任意):

38、public static String mid(String str, int pos, int len)
得到字符串str从pos开始len长度的子串。
如果str为null或为””,则返回它本身
如果len小于0或pos大于srt的长度,则返回””
如果pos小于0,则pos设为0
举例(*表示任意):

39、public static String substringBefore(String str, String separator)
得到字符串str的在字符串separator出现前的字串,且separator不包括在内。
如果str为null或为””,则返回它本身
如果separator为null,则返回str本身
举例(*表示任意):

40、public static String substringAfter(String str, String separator)
得到字符串str的在字符串separator出现后的字串,且separator不包括在内。
如果str为null或为””,则返回它本身
如果separator为null,则返回””
举例(*表示任意):

41、public static String substringBeforeLast(String str, String separator)
和45类似,得到字符串str的在字符串separator最后一次出现前的字串。
这里不再举例。
42、public static String substringAfterLast(String str, String separator)
和46类似,得到字符串str的在字符串separator最后一次出现后的字串。
这里不再举例。
43、public static String substringBetween(String str, String tag)
得到str中的在两个字符串tag中间的字符串,即str中的tag所夹的串。
如果str为null或tag为null,返回null
举例(*表示任意):

44、public static String substringBetween(String str, String open, String close)
得到str中的在两个字符串open和close中间的字符串,即open和close所夹的串。
如果str为null或open为null或close为null,返回null
举例(*表示任意):

45、public static String[] substringsBetween(String str, String open, String close)
得到str中的在两个字符串open和close中间的字符串,即open和close所夹的串,
把所有符合的结果放在数组中返回。
和44类似,但是返回了所有的结果(44只返回了第一个匹配的结果)。
这里不再举例。
46、public static String[] split(String str)
把字符串拆分成一个字符串数组,用空白符(whitespace)作为分隔符。
如果字符串为null,返回null
如果字符串为””,返回空数组{}
举例(*表示任意):

47、public static String[] split(String str, char separatorChar)
把字符串拆分成一个字符串数组,用指定的字符separatorChar作为分隔符。
如果字符串为null,返回null
如果字符串为””,返回空数组{}
举例(*表示任意):

48、public static String[] split(String str, String separatorChars)
把字符串拆分成一个字符串数组,用指定的字符串separatorChars作为分隔符。
如果字符串str为null,返回null
如果字符串str为””,返回空数组{}
如果separatorChars为null,则默认为空白符
和47类似。
举例(*表示任意):

49、public static String[] split(String str, String separatorChars, int max)
把字符串拆分成一个字符串数组,用指定的字符串separatorChars作为分隔符,
数组的最大长度为max。
如果字符串str为null,返回null
如果字符串str为””,返回空数组{}
如果separatorChars为null,则默认为空白符
如果max小于等于0,认为是没有限制
举例(*表示任意):

50、public static String join(Object[] array)
把数组中的元素连接成一个字符串返回。
举例(*表示任意):

51、public static String join(Object[] array, char separator)
把数组中的元素连接成一个字符串返回,把分隔符separator也加上。
举例(*表示任意):

52、public static String join(Object[] array, char separator, int startIndex, int endIndex)
把数组中的元素连接成一个字符串返回,把分隔符separator也加上。
连接的开始位置为startIndex,结束位置为endIndex。
这里不再举例。

53、public static String join(Object[] array, String separator)
与51类似,这里不再举例。
54、public static String join(Object[] array, String separator, int startIndex, int endIndex)
与52类似,这里不再举例。

55、public static String deleteWhitespace(String str)
删除字符串中的所有空白符(whitespace),空白符是这样定义的{@link Character#isWhitespace(char)}。
举例(*表示任意):

56、public static String replaceOnce(String text, String repl, String with)
在字符串text中用with代替repl,仅一次。
这里不再举例。
57、public static String replace(String text, String repl, String with)
在字符串text中用with代替repl,替换所有。
这里不再举例。
58、public static String replace(String text, String repl, String with, int max)
在字符串text中用with代替repl,max为最大替换次数。
如果max小于0,则替换所有。
这里不再举例。
59、public static String replaceChars(String str, char searchChar, char replaceChar)
在字符串str中用字符replaceChar代替所有字符searchChar,
如果字符串为null或””,则返回它本身。
这里不再举例。
60、public static String replaceChars(String str, String searchChars, String replaceChars)
用replaceChars代替str中的searchChars。
replaceChars的长度应该和searchChars的长度相等,
如果replaceChars的长度大于searchChars的长度,超过长度的字符将被忽略,
如果replaceChars的长度小于searchChars的长度,超过长度的字符将被删除。
举例(*表示任意):

61、public static String overlay(String str, String overlay, int start, int end)
用字符串overlay覆盖字符串str从start到end之间的串。
如果str为null,则返回null
如果start或end小于0,则设为0
如果start大于end,则两者交换
如果start或end大于str的长度,则认为等于str的长度
举例(*表示任意):

62、public static String repeat(String str, int repeat)
重复字符串repeat次,组合成一个新串返回。
如果字符串str为null或””,则返回它本身
如果repeat小于0,则返回””
举例(*表示任意):

63、public static int countMatches(String str, String sub)
计算字符串sub在字符串str中出现的次数。
如果str为null或””,则返回0
举例(*表示任意):

参考文章:

Original: https://www.cnblogs.com/better-farther-world2099/p/13646052.html
Author: 奕锋博客
Title: StringUtils工具类

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/571742/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 根据Map值 double 类型的进行排序

    /** * 将集合按照降序排列-Double * @param nowPartTwoData * @return */private static List> sortByV…

    Java 2023年6月13日
    096
  • 相邻两个生产计划之间的衔接问题

    本文主要探讨在生产计划的”编制 -> 执行”过程中,遇到的计划与实际生产活动,相邻两个计划之间的衔接问题,及常见的方案建议。 生产计划是通过对生产环境…

    Java 2023年6月16日
    0121
  • 【hexo博客搭建】本地搭建hexo博客(上)

    前言 本篇文章会从本地(Windows 10)搭建-主题更换-部署阿里云详细步骤,如果在搭建过程中,遇到问题,可以通过博客页脚下的QQ联系我,或者在下面评论留言 一.本地搭建 1….

    Java 2023年6月13日
    072
  • SpringBoot集成redis简要

    本文为redis服务的独立部署,内置到应用服务中同理,仅需要2、3、4三步(根据情况添加) 大致步骤: 详细步骤: 本人很懒,不想写安装,请移步其他道友: ​ applicatio…

    Java 2023年6月13日
    046
  • Java-Dubbo学习及整合SpringBoot

    Dubbo是Java的RPC框架,具有三大核心功能:面向接口的远程方法调用,智能容错和负载均衡,以及服务的自动注册和发现 Dubbo架构图: 节点角色说明: 节点 说明 Provi…

    Java 2023年6月8日
    084
  • Docker 部署xxl-job 报错:xxl-rpc remoting error(connect timed out), for url : xxxxxx

    使用Docker 部署的xxl-job,当调度中心和执行器部署在不同的容器内,此时xxl-job调用执行器的服务就会报: address:http://172…

    Java 2023年6月5日
    095
  • c#反射

    待总结 posted @2015-03-19 12:58 zhepama 阅读(134 ) 评论() 编辑 Original: https://www.cnblogs.com/zh…

    Java 2023年5月30日
    098
  • 谈谈多线程

    多线程真的是一个很宽的话题,可以聊一串东西线程安全、同步机制、锁、线程运行状态、CAS原子操作、线程池、甚至是JMM、内存可见性等。 而在日常coding中更多地关注是创建线程池提…

    Java 2023年5月30日
    097
  • nginx 反向代理

    nginx 反向代理 两边协议要一样,http的反向代理要http的 Original: https://www.cnblogs.com/agang-php/p/15687022….

    Java 2023年5月30日
    082
  • 思诺维特×JNPF:构建智慧物联生态体系,赋能产业智能化转型

    引言 当下的社会背景,物联网技术正在全力助推人类社会由”信息化”转向”智能化”,对信息科技与产业产生了巨大的变化。但就目前的情况来看…

    Java 2023年6月5日
    092
  • 大三上 期中考试

    湛江师范学院 2014 - 2015 学年度第 1 学期 期中试卷 科目:LINUX 平台及应用 C 编程 shell编程 100 蔡广基 评卷人 蔡广基 一、操作题。添加一个 1…

    Java 2023年6月13日
    077
  • MyBatis 使用(XML版本)

    一、MyBatis相关概念 对象 / 关系数据库映射(ORM) ORM全称Object/Relation Mapping:表示对象-关系映射的缩写 ORM完成⾯向对象的编程语⾔到关…

    Java 2023年6月5日
    084
  • Redis的中并发问题的解决方案小结

    什么是Redis的并发竞争问题 Redis的并发竞争问题,主要是发生在并发写竞争。考虑到redis没有像db中的sql语句,update val = val + 10 where …

    Java 2023年6月9日
    078
  • 深入理解Java String类(综合)

    在Java语言了中,所有类似”ABC”的字面值,都是String类的实例;String类位于java.lang包下,是Java语言的核心类,提供了字符串的比…

    Java 2023年5月29日
    0109
  • linux在下软件太卡?手把手教你配置国内镜像源

    ubuntu18.04 配置国内镜像源 修改配置文件 手动更改 用你熟悉的编辑器打开 /etc/apt/sources.list ,例如 vi /etc/apt/sources.l…

    Java 2023年6月7日
    089
  • Android框架式编程之JavaPoet框架

    一、JavaPoet 介绍 JavaPoet是Square推出的开源Java代码生成框架,提供Java Api生成.java源文件。这个框架功能非常有用,我们可以很方便的使用它根据…

    Java 2023年5月29日
    0105
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球