错误:无法调用' split'使用类型'(String,(String) - > Bool)的参数列表'
我想使用的代码:let nameArr = split(name) {$0 == "."}
答案 0 :(得分:4)
字符串不再是收藏,String
不再符合CollectionType
。您可以使用其他替代方法,例如函数componentsSeparatedByString
:
var name = "Victor.Hello.GYTT"
let nameArr = name.componentsSeparatedByString(".") // [Victor, Hello, GYTT]
另一种选择是使用characters
属性:
let nameArr = split(name.characters) { $0 == "." }.map { String($0) }
使用Xcode 7 beta 2中的新.init
语法,其中init
“现在可以像静态方法一样引用”,如下所示:
let nameArr = split(name.characters) { $0 == "." }.map { String.init }
或者让String
符合协议,但Apple决定删除String
Sliceable
的一致性,请小心。
您可以在@AirSpeedVelocity的博客中详细了解Changes to the Swift Standard Library in 2.0 beta 1中的知名人数变化。非常好。
我希望这对你有所帮助。