• 【设为首页】
  • 【收藏闪客居】
当前位置:主页>共享文档类>共享文档类>文章内容
  • 交换二维数组的行列(as3.0)
  • 来源: 作者: 2008-06-19 【

代码如下:

package com.riafan.utils {

	/**
	 * Class that contains static utility methods for manipulating and working
	 * with Arrays
	 * @author Flying
	 * @version 1
	 * @tiptext
	 */
	public class ArrayUtil {

		/**
		 * Switch the rows and columns of a 2d array array
		 * @param arr The 2d array whose dimensions will be switched
		 * @return A new array which contains items after switch 
		 */
		public static function switchDimensions(arr : Array) : Array {
			var newArr : Array = new Array();
			var rowMax : uint = arr.length;
			var colMax : uint;
			try {
				if(arr[0] is Array) {
					colMax = arr[0].length;
				}else {
				    throw new TypeError("muse be a 2d array");
				}
			}
			catch (error : TypeError) {
				trace(error.message);
			}
			for (var col : uint = 0; col < colMax; col++) {
				var tmpArr : Array = new Array();
				for (var row : uint = 0; row < rowMax; row++) {
					tmpArr[row] = (arr[row][col]);
				}
				newArr[col] = tmpArr;
			}
			return newArr;
		}
	}
}

说明:switchDimensions方法用来交换初始二维数组的行列,并返回新的二维数组。比如说[[1,2],[true,false],['A','B']]将返回[[1,true,'A'],[2,false,'B']]。




上一篇:做飞机游戏经常使用的方向控制类 Direction.as(as3.0)   下一篇:没有了
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
推荐内容

Copyright © 2006-2008 flashas.net All Rights Reserved.
网站内容咨询: admin#flashas.net (#为@) 联系QQ:40777822 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)