在Swift中迭代AnyObject数组的最佳做法是什么?

在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 { 
     ... 
    } 
} 

(减高性能,更安全)