推荐一个操作字符串超级好用的工具类——StringUtils 类

2022-07-31  本文已影响0人  Java技术人

StringUtils 工具类

1. StringUtils 工具类介绍

2. CharSequence 和 String 的区别

CharSequence是一个接口,用于表示有序的字符集合,并提供了一些基本的操作方法。

注意:CharSequence 是一个接口,不可以直接通过 new 的方式来创建一个实例对象。

 CharSequence cs=new CharSequence(“Java”)  // 报错

但是可以直接进行赋值来创建一个实例对象。

CharSequence str = “Java”;  // 成功

解释:因为 String 类型的数据存在常量池,此时其实真正创建这个 Java 的是 String 这个类,而不是 CharSequence 这个接口,在 String 创建完之后将这个字符串传递给了 CharSequence 类。所以是正确的。

3. StringUtils 工具类常用方法

3.1 检查字符串是否为空:

使用方式:

StringUtils.isBlank("Java");  // false

3.2 检查字符串是否为空

注意:这个方法和 isBlank 极为相似,区别就是:isBlank()会把空格当作空处理,而 isEmpty()会把空格当作非空处理。

StringUtils.isEmpty("Java");  // false
StringUtils.isEmpty(" ");  // false,空格会作为非空处理。
StringUtils.isEmpty(null); // true

String str = "";
StringUtils.isEmpty(str);  // true,当字符串长度为0就是代表的空字符串。

3.3 去除前后空白

使用方式:

StringUtils.trim(null) = null  // 输入的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"

String str = null;
StringUtils.trimToEmpty(str);  // ""

3.4 比较两个字符串是否相等

String str1 = null;
String str2 = "";
// System.out.println(str1.equals(str2));  // 报空指针错误
System.out.println(StringUtils.equals(str1,str2)); // false。不会报错

// 如果两个字符串都是空字符串则认为相等。

3.5 首字母大小写

String str = "abc";
System.out.println(StringUtils.capitalize(str)); // Abc

String str2 = "Abc";
System.out.println(StringUtils.uncapitalize(str2)); // abc

3.6 重复字符串次数

StringUtils.repeat("abc", 5);  返回结果:abcabcabcabcabc

3.7 判断一个字符串中是否全部都是大写,或者全部都是小写。

String str = "abC";
StringUtils.isAllLowerCase(str); // false

String str2 = "ABC";
StringUtils.isAllUpperCase(str2); // true

3.8 是否都由字母组成

3.9 字符串倒转

 StringUtils.reverse("abcdef"); 返回结果:fedcba

3.10 大小写转换

注意:空格以及特殊符号不会变化

StringUtils.swapCase("I am J-A*v a") 返回结果:i AM j-a*V A
上一篇 下一篇

猜你喜欢

热点阅读