`
china34420
  • 浏览: 136433 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

合并多个数组

J# 
阅读更多
合并多个数组,可合并一维数组和二维数组,哈哈.比较简单,自己先存着,以免以后用来
如:
var a1:Array=[1,2,3,4]
var a2:Array=[432,4,5,7]
var a3:Array=[36]
var aa:Array=[a1,a2,a3]


var m:mergeArray=new mergeArray;

//var a:Array=m.Merge(aa);//-----------1
var a:Array=m.Merge(a1,a2,a3)//--------2

trace(a + " = " + a.length);
//1,2都输入1,2,3,4,432,4,5,7,36 = 9


package
{
	
	/**
	 * ...合并多个数组,可合并一维数组和二维数组
	 * @author zkl
	 */
	public class mergeArray
	{
		private var i:int;
		
		private var j:int;
		
		public function Merge(...args):Array
		{
			var _newArray:Array = new Array;
			
			var len:int = args.length;
			
			if (len == 1) {
				
				//二维数组
				if (args[0] is Array) {
					
					for (i = 0; i < args[0].length; i++ ) {
						//合并一维数组
						 _newArray = mergeing(args[0]); 
						 
					}
				}
				
			}else {
				
				_newArray = mergeing(args);
				
			}
				
			return _newArray;
			
		}
		
		/**
		 * 合并一维数组
		 */
		private function mergeing(a1:Array):Array
		{
			var a:Array = new Array;
			
			for (i = 0; i < a1.length; i++ ) {
					
					if (a1[i] is Array) {
						
					    for (j = 0; j < a1[i].length; j++ ) {
						 
					    	a.push(a1[i][j]);
						 
					    }
						
					}
				}
		    
			return a;
		}
		
	}
	
}


升级版-------------------------------------------不知还有没有更好的办法?
package {

	/**
	 * ...合并多个数组,可合并一维数组和二维数组
	 * @author zkl
	 * 2010-8-30 14:27
	 */
	public class mergeArrayOk {
		public function Merge(... args):Array {
			return merge1(args);
		}

		private function merge1(arr:Array):Array {
			var i:int, j:int;
			var _tempArray:Array = new Array;
			//为了不让每次循环都计算数组长度
			var len:int = arr.length;
			for (i = 0; i < len; i++){
				if (arr[i] is Array){
					var len2:int = arr[i].length;
					for (j = 0; j < len2; j++){
						if (arr[i][j] != null){
							_tempArray.push(arr[i][j]);
						}
					}
				} else if (arr[i] != null){
					_tempArray.push(arr[i]);
				}
			}
			//查询_tempArray是否还有数组,有则再次转换
			var m:int;
			var len3:int = _tempArray.length;
			for (i = 0; i < len3; i++){
				if (_tempArray[i] is Array){
					return merge1(_tempArray);
					break;
				} else {
					m++;
					if (m == _tempArray.length){
						return _tempArray;
					}
				}
			}
		}
	}
}
0
0
分享到:
评论

相关推荐

    JS实现的合并多个数组去重算法示例

    本文详细介绍了使用JavaScript实现合并多个数组并进行去重处理的算法示例,重点涉及了数组的合并、去重以及排序等操作技巧。下面将根据上述内容深入剖析知识点。 ### 数组合并去重算法 #### 数组合并 在...

    原生JavaScript实现合并多个数组示例

    原生JavaScript实现合并多个数组的方法主要包括两种:使用原生JavaScript的Array方法,以及使用jquery库提供的功能。以下是详细知识点解析: ### 原生JavaScript合并数组 JavaScript为数组提供了多种操作方法,...

    JS合并两个数组的3种方法详解

    这篇文章主要介绍了JS合并两个数组的3种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 需要将两个数组合并成为一个的情况。比如: var a = [1,2,3];...

    vb 有序数组的合并

    如果其中一个数组已经遍历完,我们将另一个数组剩余的所有元素依次添加到 `c`。 在循环结束后,我们可以通过 `pc` 的值知道合并后数组 `c` 实际填充了多少个元素。接着,我们可以使用 `For` 循环遍历 `a`、`b` 和 `...

    java 数组的合并

    当我们需要将两个或多个数组合并成一个大的数组时,就需要用到数组的合并技术。本篇文章将详细探讨Java中如何实现数组的合并。 首先,我们要了解Java中的数组。数组是由相同类型的数据元素构成的有序集合,可以通过...

    java中两个byte数组实现合并的示例

    在Java编程语言中,有时我们需要将两个或多个字节数组(`byte`数组)合并成一个新的单一数组。这种情况在处理二进制数据、文件读写或者与硬件交互时尤其常见。本文将深入探讨如何在Java中实现两个`byte`数组的合并,...

    js代码-js concat 数组合并 数组连接

    `concat()`方法可以接受任意数量的数组参数,这样就可以合并多个数组: ```javascript let array1 = [1, 2, 3]; let array2 = [4, 5, 6]; let array3 = [7, 8, 9]; let combined = array1.concat(array2, array3); ...

    两个数组合并排序

    数组的合并是指将两个或多个数组的元素结合到一个新的数组中。合并操作通常涉及遍历每个数组,并将元素添加到结果数组中。 #### 排序(Sorting) 排序是将数组中的元素按照某种规则(如升序或降序)重新排列的过程。...

    matlab开发-多维数组的合并排序

    多维数组可以看作是由多个行和列组成的矩阵的集合,每个矩阵可以在第三维度上堆叠,形成一个三维数组,甚至可以扩展到更多维度。这种数据结构非常适合处理高维数据,如图像、音频信号等。 合并排序在MATLAB中的实现...

    合并一维字符串数组并去重 C#

    如果需要处理更复杂的情况,例如合并多个数组并去重,我们可以使用泛型和Linq。下面是一个扩展的示例,它可以处理任意数量的字符串数组: ```csharp public static string[] MergeAndRemoveDuplicates(params ...

    合并两个数组的Java程序.docx

    在Java编程中,合并两个数组是一项常见的操作,特别是在处理数据集合时。本篇文章将介绍两种方法来合并两个数组,一种是使用Java内置的`System.arraycopy()`函数,另一种是不使用预定义函数,而是通过手动遍历来实现...

    php数组合并 array_merge-php函数__2.docx

    合并多个数组 当合并两个或多个数组时,`array_merge`会将它们组合成一个新的数组。如果数组中的键名相同,则后面的数组中的值会覆盖前面数组中的同名键值。 **示例代码:** ```php $array1 = ["forasp" =&gt; "....

    JavaScript获取多个数组的交集

    在JavaScript编程语言中,获取多个数组的交集是一项常见的任务,尤其在处理数据集合或进行数据分析时。交集指的是存在于所有数组中的共同元素。本文将深入探讨如何利用JavaScript实现这一功能,同时也会提及一些相关...

    JS实现合并两个数组并去除重复项只留一个的方法

    在JavaScript中,合并两个数组并去除重复项是一个常见的需求,尤其是在处理用户输入、数据整合或者数据处理时。本文将详细阐述如何使用JavaScript来实现这一功能,并介绍相关的数组处理技巧。 首先,要合并两个数组...

    C# 拷贝数组的几种方式.

    如果需要灵活地合并多个数组,使用 ArrayList 来合并数组可能是最好的选择。 需要注意的是,在复制数组时,一定要用 new 在堆中开辟一块新的空间专门用于存放数组,这样才是有效的复制。同时,需要避免浅拷贝,否则...

    js代码-2个数组对象去重获取合并后的数组

    本主题将深入探讨如何使用JS代码处理两个数组对象,以实现去重并获取合并后的唯一数组。 首先,我们需要理解数组对象的概念。在JavaScript中,数组是一种特殊的对象,它们的键是数字(表示索引)或字符串,而值可以...

    js合并两个数组生成合并后的key:value数组

    在JavaScript编程中,有时我们需要将两个数组合并成一个新的数据结构,比如键值对(key-value)数组。在给定的示例中,我们有两个数组,`activeSubjectsName` 和 `activeSubjectsNum`,分别存储了科目名称和相应的节...

    php数组合并 array_merge-php函数_.docx

    array_merge 函数是 PHP 中的一个内置函数,用于合并多个数组 thành一个新的数组。该函数的语法为: `$newarray = array_merge($array1, $array2, ...);` 其中,`$array1`、`$array2` 等为要合并的数组,`$new...

Global site tag (gtag.js) - Google Analytics