在下面的代码行中,反斜杠告诉Swift做什么?
print("The total cost of my meal is \(dictionary["pizza"]! + dictionary["ice cream"]!)")
答案 0 :(得分:3)
反斜杠在Swift中有一些不同的含义,具体取决于上下文。在您的情况下,这意味着字符串插值:
print("The total cost of my meal is \(dictionary["pizza"]! + dictionary["ice cream"]!)")
...与...相同:
print("The total cost of my meal is " + String(dictionary["pizza"]! + dictionary["ice cream"]!))
但是第一种形式更具可读性。另一个例子:
print("Hello \(person.firstName). You are \(person.age) years old")
可能会打印类似Hello John. You are 42 years old
的内容。比以下内容清晰得多:
print("Hello " + person.firstName + ". You are " + String(person.age) + " years old")
答案 1 :(得分:1)
这称为字符串插值。当您要将变量的值嵌入到字符串中时,必须将变量名称放在括号之间,并用反斜杠转义开头的括号。这样,编译器知道必须替换那里的变量值,而不是使用变量名的String文字。
有关该主题的更多信息,请查看Swift语言指南的String interpolation部分。