StringUtils学习笔记

这篇博客详细介绍了Java中的StringUtils工具类,包括字符串的判断、去除空格、截取、剥离、比较、查找、包含、截取、分割、连接、删除与替换、重复以及出现次数等操作,并给出了丰富的示例代码。
摘要由CSDN通过智能技术生成

一、StringUtils字符串工具类

1.1.判断是否空字符串

  • isBlank(final CharSequence cs):判断是空字符串;
  • isNotBlank(final CharSequence cs):判断不是空字符串;
  • isEmpty(final CharSequence cs):判断是空字符串;
  • isNotEmpty(final CharSequence cs):判断不是空字符串;

字符串判空示例代码

StringUtils.isBlank(null);      = true
StringUtils.isBlank("");        = true
StringUtils.isBlank(" ");       = true
StringUtils.isBlank("bob");     = false
StringUtils.isBlank("  bob  "); = false
StringUtils.isEmpty(null);      = true
StringUtils.isEmpty("");        = true
StringUtils.isEmpty(" ");       = false
StringUtils.isEmpty("bob");     = false
StringUtils.isEmpty("  bob  "); = false

说明:isBlankisEmpty的区别在于在于空格字符串的判断不同;简言之,Empty认为空格字符不是空字符串

1.2.判断是否存在空字符串

  • isAnyEmpty(final CharSequence... css):判断是否存在空字符串;
  • isNoneEmpty(final CharSequence... css)判断全部都不是空字符串;
  • isAllEmpty(final CharSequence... css):判断全部为空字符串;
  • isAnyBlank(final CharSequence... css):判断是否存在空字符串;
  • isNoneBlank(final CharSequence... css)判断全部都不是空字符串;
  • isAllBlank(final CharSequence... css):判断全部为空字符串;

判断是否存在空字符串示例代码

StringUtils.isAnyBlank(null)             = true
StringUtils.isAnyBlank(null, "foo")      = true
StringUtils.isAnyBlank(null, null)       = true
StringUtils.isAnyBlank("", "bar")        = true
StringUtils.isAnyBlank("bob", "")        = true
StringUtils.isAnyBlank("  bob  ", null)  = true
StringUtils.isAnyBlank(" ", "bar")       = true
StringUtils.isAnyBlank(new String[] {})  = false
StringUtils.isAnyBlank(new String[]{""}) = true
StringUtils.isAnyBlank("foo", "bar")     = false

说明:同理,这里的区别也是在于空格字符串的不同对待;

1.3.去除字符串前后空格

  • trim(final String str):去除字符串前后空格,同时不改变原字符串;
  • trimToNull(final String str):去除字符串前后空格,如果去除后是空字符串就转为null;
  • trimToEmpty(final String str):去除字符串前后空格,如果去除后是空字符串就转为空字符串(null转为"");
  • strip(final String str):这个也可以去除字符串的前后空格,不改变原字符串;
  • stripToNull(String str):同trimToNull(final String str)类似;
  • stripToEmpty(final String str):同trimToEmpty(final String str)类似;

去除字符串前后空格示例代码

StringUtils.trim(null)                = null
StringUtils.trim("     ")             = ""
StringUtils.trimToNull(null)          = null
StringUtils.trimToNull("     ")       = null
StringUtils.trimToEmpty(null)         = ""
StringUtils.trimToEmpty("     ")      = ""

1.4.字符串截取

  • truncate(final String str, final int maxWidth):截取字符串的前maxWidth个字符;
    • 如果str的长度小于maxWidth就直接返回str
    • 如果maxWidth小于0则抛出IllegalArgumentException异常;
  • truncate(final String str, final int offset, final int maxWidth):截取指定区域的字符串;

字符串截取示例代码

StringUtils.truncate(null, 0)       = null
StringUtils.truncate(null, 2)       = null
StringUtils.truncate("", 4)         = ""
StringUtils.truncate("abcdefg", 4)  = "abcd"
StringUtils.truncate(null, 0, 0) = null
StringUtils.truncate(null, 2, 4) = null
StringUtils.truncate("", 0, 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值