问题:要把字符串String str = "我|爱|你";使用分割符拆分为一个数组,很容易想到使用方法split("|"),代码如下:
public class SplitTest {
public static void main(String[] args) {
String str = "我|爱|你";
/*拆分*/
String[] strArr = str.split("|");
System.out.println("length:" + strArr.length);
/*遍历*/
for (int i=0; i
System.out.println(strArr[i]);
}
}
}
然而,结果却不是我们想要的,如图:
哎,不对啊,为什么是这个效果啊!
原因:split(String regex):参数是正则表达式!"."和"|"都是转译字符,需要进行转译必须得加上"\\"。
正确代码如下:
public class SplitTest {
public static void main(String[] args) {
String str = "我|爱|你";
/*拆分【需要进行转译】*/
String[] strArr = str.split("\\|");
System.out.println("length:" + strArr.length);
/*遍历*/
for (int i=0; i
System.out.println(strArr[i]);
}
}
}
结果正确显示: