java语言中常用的拆分字符串方法是String类中的
//根据给定正则表达式的匹配拆分此字符串。
public String[] split(String regex)
今天我们来探讨下它的一个重载方法
public String[] split(String regex,int limit)
jdk手册中给的功能释义是和之前方法一样的。
regex
- 定界正则表达式,即根据给定的正则表达式来匹配拆分字符串
limit
- 结果阈值,即将字符串需要拆分的项数预设值
下面举几个特殊值的案例供大家参考,上菜。
public class SplitDemo {
public static void main(String[] args) {
String line = "=1=2==3=4=5=6=====";
//limit:2表示拆分出两项,当后面还有可拆分项时会忽略。
//把第一次拆分后第二部分作为数组的第二个元素
String[] data = line.split("=", 2);
System.out.println(Arrays.toString(data));
data = line.split("=", 4);
System.out.println(Arrays.toString(data));
//当指定的拆分项超过了最多可拆分项时,则返回最多可拆分内容
data = line.split("=", 20);
System.out.println(Arrays.toString(data));
//效果和split("=")一致
data = line.split("=", 0);
System.out.println(Arrays.toString(data));
//若字符串末尾连续匹配可拆分项,那么所有拆分出来的空字符串全部保留
data = line.split("=", -1);
System.out.println(Arrays.toString(data));
}
}
下面给出输出的结果:
[,1=2==3=4=5=6=====]
[,1,2,=3=4=5=6=====]
[,1,2,,3,4,5,6, , , , ,]
[,1,2,,3,4,5,6]
[,1,2,,3,4,5,6,,,,,]