iPh*_*Guy 0 iphone ios swift ios8
我有一个包含字符串的数组,即数组
我尝试连接字符串,但收到错误“字符串与 UInt8 不同”
var titleString:String! = ""
for title in array {
titleString += "\(title)"
}
Run Code Online (Sandbox Code Playgroud)
要连接字符串数组的所有元素,可以使用以下reduce方法:
var string = ["this", "is", "a", "string"]
let res = string.reduce("") { $0 + $1 }
Run Code Online (Sandbox Code Playgroud)
第一个参数是初始字符串,为空,第二个参数是闭包,对数组中的每个元素执行。该闭包接收 2 个参数:上一步返回的值(如果是第一个元素,则为初始值)和当前元素值。
更多信息请点击此处
附录我忘记明确回答你的问题:串联不起作用,因为你将其声明为titleString可选 - 只要变成非可选变量,它就会起作用。如果您仍然想使用可选选项,请在进行分配时使用强制展开:
titleString! += "\(title)"
Run Code Online (Sandbox Code Playgroud)
附录 2正如@MartinR 所建议的,还有另一种更简单的连接方法:
join("", string)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9615 次 |
| 最近记录: |