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 };