一尘不染

在Swift中执行println字典项时转义字典键双引号

swift

我一直在玩Swift,但遇到了一个问题。我有以下字典:

var locations:Dictionary<String,CLLocationCoordinate2D> = ["current":CLLocationCoordinate2D(latitude: lat, longitude: lng) ];

println("current locaition is \(locations["current"])")

但是编译器抱怨双引号current引起了我字典中的键。

我尝试用来转义,\但这不是正确的方法。

感谢任何帮助。


阅读 266

收藏
2020-07-07

共1个答案

一尘不染

Xcode 7.1以上

从Xcode 7.1 beta 2开始,我们现在可以在字符串文字中使用引号。从发行说明中:

现在,在字符串中插入的表达式可能包含字符串文字。例如,“我的名字是(attributes [“
name”]!)!”现在是一个有效的表达式。(14050788)

Xcode <7.1

我不认为您可以那样做。

来自文档

您在插值字符串内的括号内编写的表达式不能包含不转义的双引号(“)或反斜杠(\),并且不能包含回车或换行符。

你必须使用

let someVar = dict["key"]
println("Some words \(someVar)")
2020-07-07