split(String regex)为java.lang.String类的方法,其功能可简单描述为在给定正则表达式的匹配位置拆分该字符串。
该方法的具体定义为
public String[] split(String regex) {
return split(regex, 0);
}
可以很明显地看到方法内部调用了一个重载的split(regex,0)方法,split(regex)方法最终返回一个字符串数组。
split(regex,0)的原型为split(String regex, int limit),该方法中的regex为匹配样板,而参数limit似乎不太好理解,通过查阅api文档得到如下说明
The limit parameter controls the number of times the pattern is applied and therefore affects the length of the resulting array. If the limit n is greater than zero then the pattern will be applied at most n - 1 times, the array’s length will be no greater than n, and the array’s last entry will contain all input beyond the last matched delimiter. If n is non-positive then the pattern will be applied as many times as possible and the array can have any length. If n is zero then the pattern will be applied as many times as possible, the array can have any length, and trailing empty strings will be discarded.
翻译如下:
limit这个参数控制样板(pattern)应用的次数,因此它影响结果数组的长度。如果limit的值为n>0,那么样板会被应用n-1次,如此一来结果数组的长度就会不大于