String [] ss=new String[2];
String mystr="abc|10001";
ss=mystr.split("|");
System.out.println(ss[0]);
System.out.println(ss[1]);
打出来的为什么是字符a和b,而不是 abc和10001,为什么,我哪里写错了吗?

解决方案 »

  1.   

    System.out.println(ss[0]);
    这是输出的是一个数组啊
    你截取完以后是 String ss = “abc”;
    你System.out.println(ss【0】);
    你这输出的是数组的第一个啊。
      

  2.   

    看了這個,也許你就更明白了String[] ss = new String[2];
    String mystr = "abc|10001";
    ss = mystr.split("|");
    System.out.println(ss[0]);
    System.out.println(ss[1]);
    System.out.println(ss[2]);
    System.out.println(ss[3]);
    System.out.println(ss[8]);
    System.out.println(ss[9]);\\|
      

  3.   

    split支持正则的
    所以如下修改
    mystr.split("\\|");
      

  4.   

    '|'需要转义
    ss=mystr.split("\\|");
    这样就可以了
      

  5.   


    String [] ss=new String[2];
    String mystr="abc|10001";
    ss=mystr.split("\\|");
    System.out.println(ss[0]);
    System.out.println(ss[1]);split是根据正则表达式来分隔的,“|”在正则表达式中表示逻辑或(X|Y X 或 Y) ,所以这里要用转义后的。
      

  6.   

    split()里的使用的是正则表达式,|在正则表达式里的意思是"或".
      

  7.   

    吧 | 转义一下就行  split("\\|");
      

  8.   

    "|"是需要转义符的
    mystr.split("\\|");