这曾经在Xcode 6 Beta 5中工作,现在我在Beta 6中遇到了编译错误
for aCharacter : Character in aString {
var str:String = ""
var newStr:String = str.append(aCharacter) // ERROR
....
}
Run Code Online (Sandbox Code Playgroud)
错误:无法append使用参数类型调用Character
Gar*_*kin 31
更新移动目标是Swift:
Swift不再有一个+运算符,可以接受String和一个字符数组.(有一种appendContentsOf()可用于此目的的字符串方法).
现在最好的方法是Martin R在下面的评论中回答:
var newStr:String = str + String(aCharacter)
Run Code Online (Sandbox Code Playgroud)
原始答案:这在Beta 6中已更改.检查发行说明.我仍在下载它,但尝试使用:
var newStr:String = str + [aCharacter]
Run Code Online (Sandbox Code Playgroud)
bas*_*nce 11
这也有效
var newStr:String = str + String(aCharacter)
Run Code Online (Sandbox Code Playgroud)
append append(c: Character)是正确的方法,但是您的代码还有另外两个问题。
首先是要遍历字符串的字符,您必须访问该String.characters属性。
第二个是append方法不会返回任何内容,因此您应该删除newStr。
代码如下所示:
for aCharacter : Character in aString.characters {
var str:String = ""
str.append(aCharacter)
// ... do other stuff
}
Run Code Online (Sandbox Code Playgroud)
另一个可能的选择是
var s: String = ""
var c: Character = "c"
s += "\(c)"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33510 次 |
| 最近记录: |