字符串工具类
对字符串的判断空
中文语境中的『空』在编程领域中细分为三种:null、"" 和 仅含空白符的字符串。即,英语中的 null、empty 和 blank 。
StringUtils.isEmpty(null) = true
StringUtils.isEmpty("") = true
StringUtils.isEmpty(" ") = false
StringUtils.isBlank(null) = true
StringUtils.isBlank("") = true
StringUtils.isBlank(" ") = true
对字符串作拼接
commons-lang3 在 org.apache.commons.lang3 包下提供了一个 StringUtils 工具类,其中有名为 join 和 joinWith 的方法,可用于字符串的拼接。
StringUtils.join(null) = null
StringUtils.join([]) = ""
StringUtils.join([null]) = ""
StringUtils.join(["a", "b", "c"]) = "abc"
StringUtils.join([null, "", "a"]) = "a"
StringUtils.joinWith(",", {"a", "b"}) = "a,b"
StringUtils.joinWith(",", {"a", "b",""}) = "a,b,"
StringUtils.joinWith(",", {"a", null, "b"}) = "a,,b"
StringUtils.joinWith(null, {"a", "b"}) = "ab"
对字符串的拆分
commons-lang3 在 org.apache.commons.lang3 包下提供了一个 StringUtils 工具类,其中有名为 .split 的方法,可用于字符串的拆分。
StringUtils.split(null, *) = null
StringUtils.split("", *) = []
StringUtils.split("a.b.c", '.') = ["a", "b", "c"]
StringUtils.split("a..b.c", '.') = ["a", "b", "c"]
StringUtils.split("a:b:c", '.') = ["a:b:c"]
StringUtils.split("a b c", ' ') = ["a", "b", "c"]
字符串内容的替换
guava 的 CharMatcher 类
commons-lang3 在 org.apache.commons.lang3 包下提供了一个 StringUtils 工具类,其中有名为 replace 的方法,可用于替换字符串中的指定内容。
StringUtils.replace(null, *, *) = null
StringUtils.replace("", *, *) = ""
StringUtils.replace("any", null, *) = "any"
StringUtils.replace("any", *, null) = "any"
StringUtils.replace("any", "", *) = "any"
StringUtils.replace("aba", "a", null) = "aba"
StringUtils.replace("aba", "a", "") = "b"
StringUtils.replace("aba", "a", "z") = "zbz"
数组工具类
判断数组中是否包含指定元素
contains 检查字符串中是否包含指定字符。
ArrayUtils.contains([1,2,3,4], 4)) = true
向数组中添加元素
.add 方法,将给定的数据添加到指定的数组中,返回一个新的数组。
.addAll 方法,将给定的多个数据添加到指定的数组中,返回一个新的数组。
截取数组中的一部分
.subarray 方法用于截取数组。按指定位置区间截取并返回一个新的数组。区间坐标左闭右开。
查找元素并返回其索引
.indexOf 方法用于查看数组中是否有指定的数值。 如果指定的元素存在,返回 index 的数值,否则返回 -1 。
复制数组
.clone 方法用于复制数组并返回。
空安全的查询长度和查询长度
.isEmpty 方法用于判断该数组是否为空。