在Swift中迭代AnyObject数组的最佳做法是什么?
问题描述:
假设我收到了一个AnyObject
数组,但我确定它们是String
s,例如。在Swift中迭代AnyObject数组的最佳做法是什么?
我试图
for string in AnyObjectArray { ... }
和
for string as String in AnyObjectArray { ... }
而且两者给我的错误。我最好怎么做?
答
如果你是100%肯定他们是字符串:
for string in AnyObjectArray as [String] { ... }
(不太安全,更高性能)
如果你不:
for obj in AnyObjectArray {
if let string = obj as? String {
...
}
}
(减高性能,更安全)