2011-11-16 72 views

回答

10
var tempString:String="[email protected];[email protected]"; 
var tempArray:Array=tempString.split(";"); 

//tempAc is a predefined and presumably prepopulated arraycollection  

for each(var email:String in tempArray) { 
    tempAc.addItem(email); 
} 

編輯現在,我看到巴蒂爾的答案,我必須添加以下:

此代碼將數組中的ArrayCollection追加。如果你只是想創建一個新的ArrayCollection,所有你需要做的是:

var tempAc:ArrayCollection=new ArrayCollection(tempArray); 

或在1號線,

var tempAc:ArrayCollection=new ArrayCollection(tempString.split(";")); 

UPDATE - 回答在評論的問題:

tempAc.getItemAt(i)會給你的電子郵件ID在

tempAc.getItemIndex("[email protected]")將使你在這[email protected]存在於ArrayCollection的索引(或-1如果不包含)

tempAc.contains("[email protected]")將返回truefalse取決於如果字符串在ArrayCollection中包含或不

所以,要檢查重複的ID,你所要做的就是:

var newEmailId:String="[email protected]"; 
if(!tempAc.contains(newEmailId)) { 
    tempAc.addItem(newEmailId); 
} 
+0

是否有這樣做的原因而不是僅僅在ArrayCollection構造函數中傳遞tempArray ?誠實的問題,我不使用ArrayCollections很多。 – shanethehat

+0

@shanethehat:你的代碼將創建一個新的arraycollection。這將只包含tempString中給出的兩個電子郵件。如果你有一個預先填充的數組集合,那麼循環是我看到的數組追加 –

+0

的方式,儘管我認爲你的意思是在最後一個代碼塊中使用分號而不是逗號。 +1 – shanethehat