NSFastEnumerationIterator.Element(又名 Any)没有下标成员
NSFastEnumerationIterator.Element (aka Any) has no subscript members
将 xcode 更新到 8 版本后,出现此错误
searchArray = allArray.filter({[=11=]["test"] as? String == findCode
let resultText: NSString = ([=11=]["test"] as? String)
return (resultText.range(of: searchText, options: NSString.CompareOptions.caseInsensitive).location) != NSNotFound
}) as NSArray!
有什么想法吗?
你的问题的最终根源是这一行:
var allArray : NSArray!
NSArray 是一个 Objective-C class。您正试图在 Swift 中编写 Objective-C 代码。不。这是Swift。使用 Swift 类型!写Swift代码!
这大概是一个的数组。 Swift 需要知道那是什么。例如,如果这是一个字典数组,那么它的类型就是 [[AnyHashable:Any]]
。如果您使用 Swift 类型,您的代码将正常工作,因为 Swift 会知道您的数组的元素是什么。
将 xcode 更新到 8 版本后,出现此错误
searchArray = allArray.filter({[=11=]["test"] as? String == findCode
let resultText: NSString = ([=11=]["test"] as? String)
return (resultText.range(of: searchText, options: NSString.CompareOptions.caseInsensitive).location) != NSNotFound
}) as NSArray!
有什么想法吗?
你的问题的最终根源是这一行:
var allArray : NSArray!
NSArray 是一个 Objective-C class。您正试图在 Swift 中编写 Objective-C 代码。不。这是Swift。使用 Swift 类型!写Swift代码!
这大概是一个的数组。 Swift 需要知道那是什么。例如,如果这是一个字典数组,那么它的类型就是 [[AnyHashable:Any]]
。如果您使用 Swift 类型,您的代码将正常工作,因为 Swift 会知道您的数组的元素是什么。