刚刚下载了Xcode 7 Beta,此错误出现在enumerate关键字上。
enumerate
for (index, string) in enumerate(mySwiftStringArray) { }
谁能帮我克服这个困难?
另外,似乎count()无法再计算的长度String。
count()
String
let stringLength = count(myString)
在上面的行中,编译器说:
“计数”不可用:访问集合中的“计数”属性。
Apple是否已发布任何Swift 2.0编程指南?
许多全局函数已被 协议扩展方法 取代,这是Swift 2的新功能,因此enumerate()现在是以下扩展方法SequenceType:
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而不是全局函数:
characters
CollectionType
let myString = "foo" let stringLength = myString.characters.count print(stringLength)
Swift 3的更新 enumerate()已重命名为enumerated():
enumerated()
let mySwiftStringArray = [ "foo", "bar" ] for (index, string) in mySwiftStringArray.enumerated() { print(string) }