我编写这个类(class)是为了一些测试目的。
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
}
^
最佳答案
需要初始化第二维数组..语法如下:
k[0] = new int[]{1};
k[1] = new int[]{2,3};
关于java - Java 中的多维数组 - 为什么会发生错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22678928/