数组初始化有什么问题我遇到语法错误此类保持级别。我不知道为什么它不起作用。以前我曾经通过首先声明一定长度的数组然后将数组分配给main数组的元素来初始化2d数组。但是当我使用这种方法时,我并没有正确地做到这一点
package {
public class Levels {
public var Level1:Array = new Array();
public var Level2:Array = new Array();
public var Level3:Array = new Array();
public var Level4:Array = new Array();
public var Level5:Array = new Array();
public var Level6:Array = new Array();
public function Levels() {
Level1[] =((1,1,1,1,1,1,1,1),
(0,1,1,1,1,1,1,0),
(0,0,1,1,1,1,0,0),
(0,0,1,1,1,1,0,0),
(1,1,1,1,1,1,1,1));
Level2[] =((1,1,1,1,1,1,1,1),
(0,1,1,1,1,1,1,0),
(0,0,1,1,1,1,0,0),
(0,0,1,1,1,1,0,0),
(1,1,1,1,1,1,1,1));
Level3[] = ((1,1,1,1,1,1,1,1),
(0,1,1,1,1,1,1,0),
(0,0,1,1,1,1,0,0),
(0,0,1,1,1,1,0,0),
(1,1,1,1,1,1,1,1));
Level4[]= ((1,1,1,1,1,1,1,1),
(0,1,1,1,1,1,1,0),
(0,0,1,1,1,1,0,0),
(0,0,1,1,1,1,0,0),
(1,1,1,1,1,1,1,1));
Level4[]= ((1,1,1,1,1,1,1,1),
(0,1,1,1,1,1,1,0),
(0,0,1,1,1,1,0,0),
(0,0,1,1,1,1,0,0),
(1,1,1,1,1,1,1,1));
Level5[]= ((1,1,1,1,1,1,1,1),
(0,1,1,1,1,1,1,0),
(0,0,1,1,1,1,0,0),
(0,0,1,1,1,1,0,0),
(1,1,1,1,1,1,1,1));
Level6[]= ((1,1,1,1,1,1,1,1),
(0,1,1,1,1,1,1,0),
(0,0,1,1,1,1,0,0),
(0,0,1,1,1,1,0,0),
(1,1,1,1,1,1,1,1));
}
}
}
您的代码看起来像PHP或某种语言-Action Script Array有不同的方法。您可以使用@Vesper所说的:
Level1 = [ // array
[1, 1, 0, 1], // first element, child array
[0, 0, 0, 0], // second element, child array
[0, 1, 1, 1]
];
或者您可以使用push:
Level1.push([0, 1, 0, 1]); // first element, child array
Level1.push([1, 1, 1, 1]); // second element, child array
只需提一下,如果要使用方括号来获取/设置数组元素,则必须提供索引:
Level1[0] = [0, 0, 0]; // set first element
Level1[1] = [1, 1, 1]; // set second element
trace(Level[2]); // throws error in your case as there is no such element
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句