StringUtils.splitByWholeSeparatorPreserveAllTokens()String.split()有什么区别?

使用splitByWholeSeparatorPreserveAllTokens,我们可以限制数组中返回的参数的数量。这是唯一的区别吗?

最佳答案

java.lang.String.split();
用法:
此方法返回的数组包含此字符串的每个子字符串,该子字符串由与给定表达式匹配的另一个子字符串终止或由字符串的结尾终止。数组中的子字符串按照它们在此字符串中出现的顺序排列。如果表达式与输入的任何部分都不匹配,则结果数组只有一个元素,即此字符串。

org.apache.commons.lang.StringUtils.splitPreserveAllTokens();
用法:
将提供的文本拆分为指定分隔符的数组,并保留所有标记,包括由相邻分隔符创建的空标记。这是使用StringTokenizer的替代方法。

阅读更多:kickjava_src_apache_StringUtils
String.split()使用最终类Pattern进行拆分。

Pattern.compile(regex).split(this , limit);

在StringUtils中,使用自己的方法splitWorker(String str, char separatorChar, boolean preserveAllTokens),这是2.0(JDK1.4)的性能调整。

关于java - splitByWholeSeparatorPreserveAllTokens和split之间的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8654621/

10-08 22:35