博客> swift 模型数组比较
swift 模型数组比较
2017-11-25 07:52 评论:0 阅读:151 梧桐一叶
swift 模型数组 比较

使用Swift语言开发的人知道,如果一个数组是字符串数组,很好知道判断数组中是否包含某个字符串,使用字符串数组的contains方法就可以判断,但是如果你的数组中存储的是Model模型,要找到某个属性是什么的模型的时候,你要怎么做呢?如果还用for循环遍历,你就out了,Swift语言给我们提供了现成的方法,很是方便 下面举例说明: 一、判断一个字符串数组是否包含某个字符串 let aryString = ["wuhan","shanghai","hangzhou","jiangsu"] let isContain = aryString.contains("wuhan") if isContain == true { print("数组ary包含“wuhan”字符串") }else{ print("数组ary不包含“wuhan”字符串") } 二、判断某个模型数组中是否包含属性等于某个属性的model var aryModel:[PersonModel] = [] let person1 = PersonModel() person1.name = "张三" person1.age = 1 person1.weight = 18 aryModel.append(person1)

    let person2 = PersonModel()
    person2.name = "李四"
    person2.age = 2
    person2.weight = 20.5
    aryModel.append(person2)

    let person3 = PersonModel()
    person3.name = "王五"
    person3.age = 2
    person3.weight = 20.5
    aryModel.append(person3)

    //数组中是否含有name="李四"的model
    let isContainLisi = aryModel.contains { (model) -> Bool in
        if model.name == "李四" {
            return true
        }else{
            return false
        }
    }
    print("==\(isContainLisi)")

//找出name="李四"的model的位置,并删除 let index = aryModel.index { (model) -> Bool in if model.name == "李四" { return true }else{ return false } } //如果index == nil,说明aryModel中没有找到名字叫李四的model if index != nil { aryModel.remove(at: index!) }else{ print("aryModel中没有找到名字叫李四的model") }

收藏
1
sina weixin mail 回到顶部