Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中的多维数组-为什么会发生错误?_Java_Arrays - Fatal编程技术网

Java中的多维数组-为什么会发生错误?

Java中的多维数组-为什么会发生错误?,java,arrays,Java,Arrays,我写这门课是为了测试 public class Crap { public static void main(String[] args) { int[][] k = new int[2][]; k[0] = {1}; k[1] = {2,3}; System.out.println(k[0][0]); System.out.println(k[0][1]); System.out.print

我写这门课是为了测试

public class Crap {
    public static void main(String[] args) {
        int[][] k = new int[2][];
        k[0] = {1};
        k[1] = {2,3};
        System.out.println(k[0][0]);
        System.out.println(k[0][1]);
        System.out.println(k[1][0]);
        System.out.println(k[1][1]);
    }
}
我在编译时遇到以下错误

Crap.java:5: error: illegal start of expression
        k[0] = {1};
               ^
Crap.java:5: error: not a statement
        k[0] = {1};
                ^
Crap.java:5: error: ';' expected
        k[0] = {1};
                 ^
Crap.java:6: error: ']' expected
        k[1] = {2,3};
          ^
Crap.java:6: error: ';' expected
        k[1] = {2,3};
           ^
Crap.java:6: error: illegal start of type
        k[1] = {2,3};
             ^
Crap.java:6: error: <identifier> expected
        k[1] = {2,3};
              ^
Crap.java:6: error: ';' expected
        k[1] = {2,3};
                ^
Crap.java:6: error: illegal start of type
        k[1] = {2,3};
                 ^
Crap.java:6: error: <identifier> expected
        k[1] = {2,3};
                  ^
Crap.java:6: error: ';' expected
        k[1] = {2,3};
                   ^
Crap.java:7: error: <identifier> expected
        System.out.println(k[0][0]);
                          ^
Crap.java:7: error: ']' expected
        System.out.println(k[0][0]);
                             ^
Crap.java:7: error: ')' expected
        System.out.println(k[0][0]);
                              ^
Crap.java:7: error: ']' expected
        System.out.println(k[0][0]);
                                ^
Crap.java:7: error: illegal start of type
        System.out.println(k[0][0]);
                                 ^
Crap.java:7: error: <identifier> expected
        System.out.println(k[0][0]);
                                  ^
Crap.java:8: error: <identifier> expected
        System.out.println(k[0][1]);
                          ^
Crap.java:8: error: ']' expected
        System.out.println(k[0][1]);
                             ^
Crap.java:8: error: ')' expected
        System.out.println(k[0][1]);
                              ^
Crap.java:8: error: ']' expected
        System.out.println(k[0][1]);
                                ^
Crap.java:8: error: illegal start of type
        System.out.println(k[0][1]);
                                 ^
Crap.java:8: error: <identifier> expected
        System.out.println(k[0][1]);
                                  ^
Crap.java:9: error: <identifier> expected
        System.out.println(k[1][0]);
                          ^
Crap.java:9: error: ']' expected
        System.out.println(k[1][0]);
                             ^
Crap.java:9: error: ')' expected
        System.out.println(k[1][0]);
                              ^
Crap.java:9: error: ']' expected
        System.out.println(k[1][0]);
                                ^
Crap.java:9: error: illegal start of type
        System.out.println(k[1][0]);
                                 ^
Crap.java:9: error: <identifier> expected
        System.out.println(k[1][0]);
                                  ^
Crap.java:10: error: <identifier> expected
        System.out.println(k[1][1]);
                          ^
Crap.java:10: error: ']' expected
        System.out.println(k[1][1]);
                             ^
Crap.java:10: error: ')' expected
        System.out.println(k[1][1]);
                              ^
Crap.java:10: error: ']' expected
        System.out.println(k[1][1]);
                                ^
Crap.java:10: error: illegal start of type
        System.out.println(k[1][1]);
                                 ^
Crap.java:10: error: <identifier> expected
        System.out.println(k[1][1]);
                                  ^
Crap.java:12: error: class, interface, or enum expected
}
^
Crap.java:5:错误:表达式的非法开始
k[0]={1};
^
java:5:错误:不是语句
k[0]={1};
^
java:5:错误:';'预期
k[0]={1};
^
java:6:错误:']'
k[1]={2,3};
^
java:6:错误:';'预期
k[1]={2,3};
^
java:6:错误:类型的非法开始
k[1]={2,3};
^
java:6:错误:应为
k[1]={2,3};
^
java:6:错误:';'预期
k[1]={2,3};
^
java:6:错误:类型的非法开始
k[1]={2,3};
^
java:6:错误:应为
k[1]={2,3};
^
java:6:错误:';'预期
k[1]={2,3};
^
java:7:错误:应为
System.out.println(k[0][0]);
^
java:7:错误:']'
System.out.println(k[0][0]);
^
java:7:错误:“)”应为
System.out.println(k[0][0]);
^
java:7:错误:']'
System.out.println(k[0][0]);
^
java:7:错误:类型的非法开始
System.out.println(k[0][0]);
^
java:7:错误:应为
System.out.println(k[0][0]);
^
java:8:错误:应为
System.out.println(k[0][1]);
^
java:8:错误:']'
System.out.println(k[0][1]);
^
java:8:错误:“)”应为
System.out.println(k[0][1]);
^
java:8:错误:']'
System.out.println(k[0][1]);
^
java:8:错误:类型的非法开始
System.out.println(k[0][1]);
^
java:8:错误:应为
System.out.println(k[0][1]);
^
java:9:错误:应为
System.out.println(k[1][0]);
^
java:9:错误:']'
System.out.println(k[1][0]);
^
java:9:错误:“)”应为
System.out.println(k[1][0]);
^
java:9:错误:']'
System.out.println(k[1][0]);
^
java:9:错误:类型的非法开始
System.out.println(k[1][0]);
^
java:9:错误:应为
System.out.println(k[1][0]);
^
java:10:错误:应为
System.out.println(k[1][1]);
^
java:10:错误:']'
System.out.println(k[1][1]);
^
java:10:错误:“)”应为
System.out.println(k[1][1]);
^
java:10:错误:']'
System.out.println(k[1][1]);
^
java:10:错误:类型的非法开始
System.out.println(k[1][1]);
^
java:10:错误:应为
System.out.println(k[1][1]);
^
java:12:错误:需要类、接口或枚举
}
^

您需要初始化二维数组。。语法如下所示:

k[0] = new int[]{1};
k[1] = new int[]{2,3};

您不能这样使用,即定义了热java语法

 k[0] = {1};
只能在初始化阵列时执行此操作,例如:

 int[][] k = {{1},{2,3}};

例如,Java中的数组是对象,而不是具有标准对象语法的对象

因此,您必须分配它们,为此您需要使用新的运算符

int[] array = new int[] { 1, 4, 6, 3};
或将数组分配给二维数组中的元素(如您所做)


还要记住,因为它们是对象,而且您使用的是参差不齐的数组,所以取消引用位置(0,1)或(0)(1)的调用将失败,因为位置(0)处的数组在0索引中只有一个项。

try:
k[0]=new int[]{1};k[1]=新的int[]{2,3}@YohanesKhosiawan许先汉 你应该把它作为一个答案。我明白了,哦,如果你不介意的话,请接受我下面的回答。。
array[3] = new int[] { 2, 4, 6, 8 };