请问下System.out.println("12".split("").length);输出为什么是3
谢谢各位了...

解决方案 »

  1.   

    因为"12".split("")结果是{"1","","2"}
      

  2.   

    public static void main(String []args) {
    String[] test = "12".split("");
    System.out.println(test.length);
    for(int i = 0; i < test.length; i++) {
    System.out.println("[" + test[i] + "]");
    }
    }
    输出
    3
    []
    [1]
    [2]
      

  3.   

    char[] c = "12".toCharArray();
      

  4.   

    char[] test = "12".toCharArray(); +1
    LZ太懒了。
      

  5.   

    呵呵。。现在我是越来越懒了代码能力也直线下降阿。。不过我要当String用的阿不是还要一个一个String.valueOf(test[0]);转换下??
    我想知道用正则怎么解决。
    或者用什么方法可以避免下。。我记得.sprit("")是将字符一个一个分开,不会多空格的
      

  6.   


    package Test;import java.util.Arrays;public class Test
    {
    public static void main(String[] args)
    {
    System.out.println(Arrays.toString("12".split("")));
    }

    }
      

  7.   


    package Test;import java.util.Arrays;public class Test
    {
    public static void main(String[] args)
    {
    System.out.println(Arrays.toString("12".split("")));
    }

    }
      

  8.   

    为什么会得到这样的结果,可以看看这个链接
    http://zzx19452008-163-com.iteye.com/blog/1163668