arrays - 尝试使用 contains() 将字符串与数组内对象内找到的字符串进行比较

标签 arrays xcode swift

我有一个字符串(newName),我想看看它是否已经存在于对象(玩家)的数组(namesArray)中。数组中的每个对象都有一个字符串属性(名称),这就是我想要与 newName 字符串进行比较的属性。

我尝试做这样的事情

if namesArray.contains(newName) {
  //do something
}

但我知道这行不通,因为它比较对象本身而不是对象内部的字符串,我只是不确定如何更深入地进行比较。

最佳答案

使用 contains 的闭包形式:

if contains(players, { $0.name == newName }) {
    ...
}

这是以下内容的缩写形式:

if contains(players, { (item) -> Bool in return item.name == newName }) {
    println("contained")
}

关于arrays - 尝试使用 contains() 将字符串与数组内对象内找到的字符串进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27950763/

相关文章:

Javascript - 对象数组,对象包含另一个数组和一个 int

java - 为什么在第二个 For 循环中给出 ArrayIndexOutOfBoundsException?

iphone - 指定图像到 4 英寸 iOS 设备

ios - cocos2dV3.0中如何截断标签

ios - PFObject 在 Xcode 6.0.1、Yosemite GM3 中没有名为 'saveInBackground' 的成员

ios - RPScreenRecorder 如何录制应用Action Extension的屏幕音视频?

arrays - 在 MATLAB 中比较相邻元素

ios - 如何在 XCode 中使用 NSConnection 进行 JSON 延迟加载?

arrays - 安全展开过滤数组的结果

ruby - 摆动假设 - ruby​​ 中字符串数组的组合或排列