我试图在Swift 2.0中反转字符串但是我在字符串上遇到错误。
func reverseString(string: String) -> String {
var buffer = ""
for character in string {
buffer.insert(character, atIndex: buffer.startIndex)
}
return buffer
}
错误:
Type 'String' does not conform to protocol 'SequenceType'
答案 0 :(得分:22)
简易解决方案:
func reverseString(string: String) -> String {
return String(string.characters.reverse())
}
您的代码适用于此更改
for character in string.characters {
斯威夫特3:
在Swift 3中reverse()
已重命名为reversed()
Swift 4:
在Swift 4中characters
可以省略,因为String
返回的行为类似于序列。
func reverseString(string: String) -> String {
return String(string.reversed())
}
答案 1 :(得分:0)
自Swift 2起,String
不符合SequenceType
。
您可以添加扩展程序。
extension String: SequenceType {}