微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

数组 – 如何检查元素是否在数组中

在Swift中,如何检查数组中是否存在元素? Xcode没有任何建议包含,包括或具有,和快速搜索通过书没有什么。任何想法如何检查这个?我知道有一个方法find返回索引号,但有一个方法返回一个布尔类似ruby的#include?

我需要的示例:

var elements = [1,2,3,4,5]
if elements.contains(5) {
  //do something
}
Swift 2,3:
let elements = [1,5]
if elements.contains(5) {
    print("yes")
}

contains()是SequenceType的协议扩展方法(用于可序列元素的序列),而不是全局方法
早期版本。

备注:

>这个contains()方法需要序列元素
采用Equatable协议,比较Andrews’s answer
>如果序列元素是NSObject子类的实例
那么你必须覆盖isEqual :,参见NSObject subclass in Swift: hash vs hashValue,isEqual vs ==
>有另一个 – 更一般的 – contains()方法,它不需要元素是等价的,并且使用谓词作为
参数。 Shorthand to test if an object exists in an array for Swift?

Swift旧版本:

let elements = [1,5]
if contains(elements,5) {
    println("yes")
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐