RKC*_*KCY 1 apache-flex actionscript-3
我有一个像这样的字符串:
var tempSting:String = "abc@abc.com;xyz@xyz.com"
我想将此String添加到ArrayCollection.并且上面的字符串应该按邮件ID划分并删除;符号并需要添加为ArrayCollection
tempAc:Arraycollection = new ArrayCollection{abc@abc.com, xyz@xyz.com}
请帮我将split String添加到ArrayCollection中.
var tempString:String="abc@abc.com;xyz@xyz.com";
var tempArray:Array=tempString.split(";");
//tempAc is a predefined and presumably prepopulated arraycollection
for each(var email:String in tempArray) {
tempAc.addItem(email);
}
Run Code Online (Sandbox Code Playgroud)
编辑现在我看到Shane的回答我必须添加以下内容:
此代码将数组附加到arraycollection.如果您只想创建一个新的arraycollection,您需要做的就是:
var tempAc:ArrayCollection=new ArrayCollection(tempArray);
Run Code Online (Sandbox Code Playgroud)
或者在一行中,
var tempAc:ArrayCollection=new ArrayCollection(tempString.split(";"));
Run Code Online (Sandbox Code Playgroud)
更新 - 回答评论中的问题:
tempAc.getItemAt(i)将在第i个位置为您提供电子邮件ID
tempAc.getItemIndex("someone@email.com")将为您提供someone@email.comarraycollection 中存在的索引(如果未包含,则为-1)
tempAc.contains("someone@email.com")将返回true或false取决于arraycollection中是否包含字符串
因此,要检查重复的ID,您所要做的就是:
var newEmailId:String="someone@email.com";
if(!tempAc.contains(newEmailId)) {
tempAc.addItem(newEmailId);
}
Run Code Online (Sandbox Code Playgroud)
var tempString:String = "abc@abc.com;xyz@xyz.com";
tempAC:ArrayCollection = new ArrayCollection(tempString.split(";"));
Run Code Online (Sandbox Code Playgroud)