我有一个包含 Episode 类型的自定义对象的 NSMutableArray。这些对象中的每一个都有多个 NSStrings 作为属性。现在我想过滤数组以检查我是否已经有这个情节(从 XML 解析)并更新它或创建一个新的情节对象。
我使用以下代码:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"weblink = %@", currentEpisode.weblink];
NSArray* hits = [appDelegate.episodesList filteredArrayUsingPredicate:predicate];
currentEpisode 是我从 XML 中解析出来的剧集,我想检查一下,episodeList 是我的 NSMutableArray 和 Episode 对象。weblink 是包含 URL 的 NSString 属性之一。
当我检查网络链接时,一切正常。但是 Podcastfeeds 中的 URL 可以更改,因此我想检查另一个名为 kuhid 的属性,它是提要中提供的唯一标识符。'kuhid' 也是一个 NSString(例如:644ED540-EDCA-4D4F-882E-4B3106DDAAB3)。当我检查“kuhid”时,谓词永远不会匹配,我得到重复。这两个属性都是 NSStrings,都正确合成。如果我尝试我的其他 NSString(例如标题)属性之一,则相同。
有谁知道为什么这只适用于网络链接而不适用于我的任何其他属性?