正如我从官方文档中了解到的那样,null 作为分隔符字符串应该在 WhiteSpace 上拆分,所以这
System.out.println(JSON.serialize(StringUtils.splitByWholeSeparator("ab de fg", null)));
应该产生[ "ab" , "de" , "fg"]
但是,我不明白为什么是一个空字符串“”,也在空格上分割。以下产生相同的输出。
System.out.println(JSON.serialize(StringUtils.splitByWholeSeparator("ab de fg", "")));
问问题
565 次
1 回答
1
你是对的。文档中缺少。null
和empty
字符串分隔符将在空白处产生分割。
在内部,代码是这样做的:
if (separator == null || EMPTY.equals(separator)) {
// Split on whitespace.
return splitWorker(str, null, max, preserveAllTokens);
}
所以这两个调用将产生相同的结果:
StringUtils.splitByWholeSeparator("ab de fg", null);
StringUtils.splitByWholeSeparator("ab de fg", "");
于 2015-04-23T08:27:04.613 回答