当数组可以为nil时,检查数组是否包含元素

时间:2016-12-21 15:49:21

标签: arrays swift

我宣布一个空数组

var myArray: [DWTeaser]?

比我想通过t元素并将它们添加到数组中,每个元素只应添加一次

for t in alltElement {
    if !self.myArray!.contains(t){
        self.myArray?.append(t)
    }
}

应用程序崩溃,我认为这是因为myArray第一次为零。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

也许试试这个:

替换

var myArray: [DWTeaser]?

由此

var myArray = [DWTeaser]()

然后这样做:

for t in alltElement {
    if !self.myArray.contains(t){
        self.myArray.append(t)
    }
}

答案 1 :(得分:0)

尝试替换

for t in alltElement {
    if !self.myArray!.contains(t){
        self.myArray?.append(t)
    }
}

以下内容:

for t in alltElement {
    if (self.myArray?.contains(t)).map(!) ?? false {
        self.myArray?.append(t)
    }
}