我正在为此寻找最佳语法:
let responseParameters = ["keyA" : "valueA", "keyB" : "valueB"]
var responseString = ""
for (key, value) in responseParameters {
responseString += "\(key):\(value)"
if Array(responseParameters.keys).last != key {
responseString += "+"
}
}
//responseString: keyA:valueA+keyB:valueB
使用flatMap之类的数组joinWithSeparator之类的东西。 (研究目的)
最佳答案
您可以映射字典中的键/值对以将它们转换为字符串数组,然后可以将它们与+
结合在一起。但是请记住,字典是无序的,因此不会保留输入的顺序。
let responseParameters = ["keyA" : "valueA", "keyB" : "valueB"]
let responseString = responseParameters.map{ "\($0):\($1)" }
.joinWithSeparator("+")