Apache flex AS3中的多维数组 我现在在玩Flex,我有C++背景,所以我不习惯AS3。 问题是在主*.mxml文件中,我有fx:script块,我试图定义一个多维数组,如下所示: public var Board:Array = new Array(25);

Apache flex AS3中的多维数组 我现在在玩Flex,我有C++背景,所以我不习惯AS3。 问题是在主*.mxml文件中,我有fx:script块,我试图定义一个多维数组,如下所示: public var Board:Array = new Array(25);,apache-flex,actionscript-3,multidimensional-array,Apache Flex,Actionscript 3,Multidimensional Array,我使用函数初始化二维数组: public function initBoard():void { var i:int; var j:int; for (i = 0; i < 25; i++) { Board[i] = new Array(40); for (j = 0; i < 40; j++) { Board[i][j] = 0; } } } 公共函数initBoard():

我使用函数初始化二维数组:

public function initBoard():void {
    var i:int;
    var j:int;
    for (i = 0; i < 25; i++) {
        Board[i] = new Array(40);
        for (j = 0; i < 40; j++) {
             Board[i][j] = 0;
        }
    }
}
公共函数initBoard():void{
变量i:int;
var j:int;
对于(i=0;i<25;i++){
板[i]=新阵列(40);
对于(j=0;i<40;j++){
板[i][j]=0;
}
}
}
这个函数稍后会在主循环中被调用到init并重置“board”为什么它不工作。AS3文档的唯一区别在于它是在函数中完成的。是否存在范围问题

提前感谢你, 尼古拉斯·沃斯


另外,我希望有人能告诉我为什么它不起作用,以及如何正确操作…

你有
I
哪里应该有j

for (j = 0; i < 40; j++) {
(j=0;i<40;j++)的
{
这会解决你的问题

for (j = 0; j < 40; j++) {
(j=0;j<40;j++)的
{

你有
i
应该有j的地方

for (j = 0; i < 40; j++) {
(j=0;i<40;j++)的
{
这会解决你的问题

for (j = 0; j < 40; j++) {
(j=0;j<40;j++)的
{

您不需要在AS3中定义数组长度-我只需要使用
[]
操作符来创建新数组。此外,您还使用了
I
,其中
j
for
循环最内层的
所需的

function initBoard():Array
{
    var board:Array = [];

    var i:int = 0;
    var j:int;

    for(i; i<25; i++)
    {
        board[i] = [];

        j = 0;
        for(j; j<40; j++)
        {
            board[i][j] = 0;
        }
    }

    return board;
}


trace(initBoard());
函数initBoard():数组
{
var板:数组=[];
变量i:int=0;
var j:int;

对于(i;i您不需要在AS3中定义数组长度-我只需要使用
[]
操作符来创建一个新数组。此外,您还使用了
i
,其中
j
是最内层
for
循环中需要的

function initBoard():Array
{
    var board:Array = [];

    var i:int = 0;
    var j:int;

    for(i; i<25; i++)
    {
        board[i] = [];

        j = 0;
        for(j; j<40; j++)
        {
            board[i][j] = 0;
        }
    }

    return board;
}


trace(initBoard());
函数initBoard():数组
{
var板:数组=[];
变量i:int=0;
var j:int;
因为(我;我)