2015-11-26 158 views
0

我已经阅读了关于多维数组的几个教程。他们都给出了声明多重数组变量相同的模式,它看起来像这样:初始化多维数组时出现'Expected Expression'错误

int[][] multi = new int[5][10]; 

但是,当我使用这个模式,我得到了Firebug的错误:

SyntaxError: expected expression, got ']' 

随着箭头指向在[] []

WebStorm显示如下错误:

Expression statement is not assignment or call 

用于第一诠释 和

expression expected 

为[] []

和的JSLint:

Unexpected ']' 

问题:如何正确初始化二维数组?

+2

您是否在问Java或Javascript?我的猜测是Javascript,考虑到上下文 - 在这种情况下,您应该删除'java'标记。 Java和Javascript是完全不同的语言。 –

+0

JavaScript。感谢您的纠正。 –

+0

JavaScript中没有静态类型。它看起来好像你正尝试在javascript环境中编写类似java的东西。 – nils

回答

0

Java:显示的例子是完全正确的。 int[][] multi = new int[5][10]int multi [][] = new int[5][10]都有效。你可以用一个简单的for循环迭代来手工初始化(一个单调乏味的过程),或者更好。

JavaScript:由于我不是很了解PL,我会给你一些如何声明这样的数组的一般示例。

var multi = new Array([]); 
multi[0][0] = 'Hi data'; 
alert(multi[0][0]); 

但总的来说Javascript中没有二维数组。您只能创建一个空的参差不齐的数组。

或从起点开始更容易:var multi = [[],[],[]];

+1

谢谢!有用。 –