许多全局函数已被Swift 2 的新特性协议扩展方法enumerate()取代,因此现在是扩展方法SequenceType:
extension SequenceType {
func enumerate() -> EnumerateSequence<Self>
}
并用作
let mySwiftStringArray = [ "foo", "bar" ]
for (index, string) in mySwiftStringArray.enumerate() {
print(string)
}
并且String不再符合SequenceType,您必须使用该characters属性来获取 Unicode 字符的集合。此外,count()它是一种协议扩展方法,
CollectionType而不是全局函数:
let myString = "foo"
let stringLength = myString.characters.count
print(stringLength)
Swift 3 的更新: enumerate()已重命名为enumerated():
let mySwiftStringArray = [ "foo", "bar" ]
for (index, string) in mySwiftStringArray.enumerated() {
print(string)
}