输入为空时String.split()的行为

vin*_*nay 3 java string split

由于标题解释了查询

有人可以解释下面两个输出的行为.

"".split(",").length
Run Code Online (Sandbox Code Playgroud)

给出输出

1
Run Code Online (Sandbox Code Playgroud)

在哪里

",".split(",").length
Run Code Online (Sandbox Code Playgroud)

给出输出

0
Run Code Online (Sandbox Code Playgroud)

And*_*mas 17

在第一种情况下,返回原始字符串,因为找不到分隔符.

来自API文档:

如果表达式与输入的任何部分都不匹配,那么结果数组只有一个元素,即该字符串.

  • 谁会想到?javadoc有答案! (8认同)