2010-04-19 87 views

回答

0
 var array1:ArrayCollection = new ArrayCollection(); 
     var array2:ArrayCollection = new ArrayCollection(); 
     var array3:ArrayCollection = new ArrayCollection(array1.source); 
     for(var i:int;i<array2.length;i++){ 
      if (!(array3.contains(array2.getItemAt(i)))) 
       array3.addItem(array2); 

     } 

這是最簡單的算法,適用於不那麼大的列表。 contains方法將檢查對象引用,如果通過查看對象屬性來定義重複項,則應使用自定義方法。

0

如果2個ArrayCollections可能包含完全相同的對象,這將是

if (acDestination.getItemIndex(acSource[i]) == -1) 
// add to the destination 

如果對象是不完全一樣的,但要避免重複值鍵字段,請在目標ArrayCollection上嘗試一個過濾器函數。

相關問題