int[][][] inputs;
inputs = new int[10][][];
inputs[0] = new int[1][];
inputs[0][0] = new int[14]{1,1,-1,-1,-1,1,-1,-1,1,-1,-1,-1,1,1};
这是我的程序摘录,我不知道为什么会导致错误。这不正确吗?
提前致谢: - )
答案 0 :(得分:10)
在Eclipse中,我收到一条非常明确的错误消息:
提供数组初始化程序时无法定义维表达式。
这意味着您可以 指定维度或数组初始值设定项(即值)。您不能同时指定两者。
只需将最后一行更改为
即可inputs[0][0] = new int[]{1,1,-1,-1,-1,1,-1,-1,1,-1,-1,-1,1,1};
答案 1 :(得分:5)
您无法构造具有声明长度和静态初始化器的数组。它必须是一个或另一个。
将inputs[0][0] = new int[14]{1,1,-1,-1,-1,1,-1,-1,1,-1,-1,-1,1,1};
更改为inputs[0][0] = new int[]{1,1,-1,-1,-1,1,-1,-1,1,-1,-1,-1,1,1};
- 新数组的长度是隐式的,因为您使用14个元素显式初始化数组。
答案 2 :(得分:0)
最后一行应该是:
inputs[0][0] = {1,1, etc.};