今天写个程序用到java里面的split()函数时,发现可以有两个参数,之前用这个函数一直是用的一个参数,今天试了下两个参数的使用,记录一下区别。
下面是菜鸟里关于split()函数的定义
通过这个定义可以发现,第一个参数是split()函数对字符串分割的根据,第二个参数是分割的份数。
第二个参数有两种写法
- 一种是比较直观的,直接输入要分割的份数a
- 另一种是-1,输入-1可以理解为无限制匹配,也就是即使两个符号之间没有内容,也会在数组里面存一个空的值。第二个参数输入-1和不输入第二个参数的效果是一样的。
具体的内容看下面的代码比较清晰
package _2_2_test;
public class one {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "192.168.1.1.........3.4";
String result1[] = str.split("\.");
for (String s : result1) {
System.out.println(s);
}
System.out.println("-------------");
String result2[] = str.split("\.", 5);
for (String s : result2) {
System.out.println(s);
}
System.out.println("-------------");
String result3[] = str.split("\.", -1);
for (String s : result3) {
System.out.println(s);
}
System.out.println("result1的分割份数:" + result1.length);
System.out.println("result2的分割份数:" + result2.length);
System.out.println("result3的分割份数:" + result3.length);
}
}
最后的结果也比较直观