可以在 JScript 中创建多维类型化数组。多维数组使用多个索引来访问数据。当脚本声明数组时,它设定每个索引的范围。多维数组与嵌套的数组类似,但嵌套的数组中每个子数组可以具有不同的长度。有关更多信息,请参见嵌套数组。
讨论
一维数组的数据类型由后面带一对方括号 ([]) 的数据类型名称指定。用同一方法也可以指定多维数组的数据类型,但要在括号内使用逗号 (,)。数组的维数等于逗号的个数加 1。下面的示例阐释了定义一维数组和多维数组之间的区别。
// Define a one-dimensional array of integers. No commas are used. var oneDim : int[]; // Define a three-dimensional array of integers. // Two commas are used to produce a three dimensional array. var threeDim : int[,,];
在下面的示例中,使用二维字符数组来存储 Tic-Tac-Toe(“零和叉”棋盘游戏)棋盘的状态。
// Declare a variable to store two-dimensional game board. var gameboard : char[,]; // Create a three-by-three array. gameboard = new char[3,3]; // Initialize the board. for(var i=0; i<3; i++) for(var j=0; j<3; j++) gameboard[i,j] = " "; // Simulate a game. 'X' goes first. gameboard[1,1] = "X"; // center gameboard[0,0] = "O"; // upper-left gameboard[1,0] = "X"; // center-left gameboard[2,2] = "O"; // lower-right gameboard[1,2] = "X"; // center-right, 'X" wins! // Display the board. var str : String; for(var i=0; i<3; i++) { str = ""; for(var j=0; j<3; j++) { if(j!=0) str += "|"; str += gameboard[i,j]; } if(i!=0) print("-+-+-"); print(str); }
该程序的输出为:
O| | -+-+- X|X|X -+-+- | |O
可以使用类型为 Object 的多维类型化数组来存储任何类型的数据。