String addString[] = jianString[0].split("[+]");
jianString[0]的字符串里没有"[+]";这条语句怎么解释啊stringjava

解决方案 »

  1.   

    没有就不分割,等于jianString[0]整个字符串,自己试试就知道的
      

  2.   

    split的参数表示的是一个正则表达式,而不是简单的字符串
     [] 和 + 在正则表达式中有特殊含义。
    像你这个,应该是按"+"分割
      

  3.   

    public static void main(String[] args)
        {
            String[] jianString = new String[] { "", "sdsaf+sdf", "sdsaf+sdf[+]sd" };
            String addString1[] = jianString[0].split("[+]");
            printStr(addString1);
            String addString2[] = jianString[1].split("[+]");
            printStr(addString2);
            String addString3[] = jianString[2].split("[+]");
            printStr(addString3);    }    public static void printStr(String[] str)
        {
            int i = 0;
            for (String s : str)
            {
                i++;
                System.out.print("str["+i+"]="+s + "    ");
            }
            System.out.println();
        }打印结果:str[1]=    
    str[1]=sdsaf    str[2]=sdf    
    str[1]=sdsaf    str[2]=sdf[    str[3]=]sd    
    你就可以看出来是怎么分的吧,这些问题自己可以走断点进行调处查看的