Java SE中String.split()方法如何处理空字符输入?
- 内容介绍
- 文章标签
- 相关推荐
本文共计563个文字,预计阅读时间需要3分钟。
使用 `string.split(,)` 方法处理空字符时,如果最后一个逗号后面没有内容,那么它不会被视为一个空字符串。因此,得到的数组元素数量只显示为2,因为只有两个非空字符串(1 和 2)。最后一个逗号没有对应的内容,所以不会增加数组长度。
string.split()方法对空字符的处理
String strtest = "1,2,";
String arry[] = strtest.split(",");
这样得到的数组元素个数只是2两个,为什么呢,最后一个","后没有内容,它没有作为空字符串成为第三个数组元素,结尾的空字符串被丢弃了!
这个函数还有另一种重载方式 :public String [] split (String regex, int limit) 看下说明:
limit 参数控制模式应用的次数,因此影响所得数组的长度。
- 如果该限制n > 0,则模式将被最多应用 n - 1 次,数组的长度将不会大于 n ,而且数组的最后一项将包含所有超出最后匹配的定界符的输入。
- 如果n 为非正,那么模式将被应用尽可能多的次数,而且数组可以是任何长度。
本文共计563个文字,预计阅读时间需要3分钟。
使用 `string.split(,)` 方法处理空字符时,如果最后一个逗号后面没有内容,那么它不会被视为一个空字符串。因此,得到的数组元素数量只显示为2,因为只有两个非空字符串(1 和 2)。最后一个逗号没有对应的内容,所以不会增加数组长度。
string.split()方法对空字符的处理
String strtest = "1,2,";
String arry[] = strtest.split(",");
这样得到的数组元素个数只是2两个,为什么呢,最后一个","后没有内容,它没有作为空字符串成为第三个数组元素,结尾的空字符串被丢弃了!
这个函数还有另一种重载方式 :public String [] split (String regex, int limit) 看下说明:
limit 参数控制模式应用的次数,因此影响所得数组的长度。
- 如果该限制n > 0,则模式将被最多应用 n - 1 次,数组的长度将不会大于 n ,而且数组的最后一项将包含所有超出最后匹配的定界符的输入。
- 如果n 为非正,那么模式将被应用尽可能多的次数,而且数组可以是任何长度。

