作者cjcat2266 (CJ Cat)
看板Flash
标题Re: [问题] 我想比较两个阵列的不同?
时间Sat Oct 9 21:02:33 2010
※ 引述《kaiyine (yumi)》之铭言:
: 阵列a是5,2,6,8,4
: 阵列b是0,1,2,3,4,5,6,7,8,9,10
: 我要如何列出阵列a缺少0,1,2,3,7,9,10呢?
这就是"集合"的问题了
同上一篇回文所说的,可以用associative array
(如果是AS3就可以用Dictionary class,相当於C++的map class)
其实可以更简短的写
(以下code未经过测试,可能有错字)
var a:Array = [5, 2, 6, 8, 4];
var b:Array = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
//集合物件
var obj:Object = new Object();
var i:Number, len:Number;
//让a的元素作为key,跟true值产生关连
for (i = 0, len = a.length; i < len; ++i) {
obj[a[i]] = true;
}
//寻找"a没有,b有的元素"
for (i = 0, len = b.length; i < len; ++i) {
//若obj[b[i]]没有关联值,那就是undefined,!undefined == true
if (!obj[b[i]]) {
trace("a没有含" + b[i]);
}
}
--
CJ Cat = Croa'J Cat = Cockroach Cat = 西街凯特 = 蜚蠊猫 = 蟑螂猫
Blog
http://cjcat.blogspot.com
Gallery
http://cjcat2266.deviantart.com
ptt2 Board CJWorkshop - 阿多比闪光(Adobe Flash)研讨区
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.36.62.43
※ 编辑: cjcat2266 来自: 114.36.62.43 (10/09 21:04)
1F:推 ComicMan:AS3强 CJcat强 10/09 21:36
2F:推 hpuser:受教! 10/10 01:53