public final static String[][] player = new String[3][5]{
{"", "", "", "", ""},
{"", "", "", "", ""},
{"", "", "", "", ""},
};
这么声明错在哪儿,好像非基本类型的数组都要初始化的,直接这么写可以吗?
有没有其他方法String二维数组Java

解决方案 »

  1.   

    测试过可行
    public final static String[][] players = new String[][]{
    {"", "", "", "", ""},
    {"", "", "", "", ""},
    {"", "", "", "", ""},
    };
      

  2.   

    测试过可行
    public final static String[][] players = new String[][]{
    {"", "", "", "", ""},
    {"", "", "", "", ""},
    {"", "", "", "", ""},
    };数组元素初始化和数组长度不能同时进行,只能二选一
    String[][] players = new String[][]
    表示的是数据类型吧
      

  3.   


    语法错误,new是开辟对象空间,然后你后面又给player具体赋值了。初始化了两遍。
      

  4.   

    数组初始化的时候,如果你指定了数组长度的时候,jvm会按照指定的长度为你分配内存空间
    而如果你在创建数组的时候同时指定初始化值,那么jvm会根据初始化的值来计算数组的长度和内存地址
    所以此时是不能给数组指定长度的
    如:int []  arr = new int[3]{1,2,3}就是错误的
    只能使用int[] arr = {1,2,3}
       或者int [] arr = mew int[3];
           arr[0]=1;
           arr[1]=2;
           arr[2]=3;
    来初始化数组