示例:
String str = "1,2,";
String arr[] = str.split(",");
这样得到的数组元素个数只是2个。原因是,最后一个","后没有内容,它没有作为空字符串成为第三个数组元素,结尾的空字符串被丢弃了。使用默认的split方法时,会默认丢弃字符串末尾的空值,而字符串中间的空值则会作为数组中的一项数据,不会被丢弃。
split函数还有另一种重载方式 :public String [] split (String regex, int limit) ,看下说明limit 参数控制模式应用的次数,因此影响所得数组的长度。
1、如果 n 大于 0,代表分割字符串后数组的最大长度,则模式将被最多应用 n - 1 次,数组的长度将不会大于 n ,而且数组的最后一项将包含所有超出最后匹配的定界符的输入。
2、如果 n 为非正,代表获取数组所有值,不会丢弃末尾空值,那么模式将被应用尽可能多的次数,而且数组可以是任何长度。
3、如果 n 为 0,那么模式将被应用尽可能多的次数,数组可以是任何长度,并且结尾空字符串将被丢弃。
博客介绍了Java中split函数的使用。默认split方法会丢弃字符串末尾空值,中间空值会保留。还介绍了split函数的重载方式,根据limit参数不同,如大于0、非正、为0,会有不同的分割效果,影响所得数组长度和空值处理。
370

被折叠的 条评论
为什么被折叠?



