字符串插值

这个新功能使字符串连接更具可读性。此语法将编译为其等效的 String.Format 调用。

没有字符串插值:

String.Format("Hello, {0}", name)

使用字符串插值:

$"Hello, {name}"

这两行是等效的,都被编译为对 String.Format 的调用。

String.Format 一样,括号可以包含任何单个表达式(调用方法,属性,空合并运算符等)。

字符串插值是 String.Format 的首选方法,因为它可以防止发生某些运行时错误。考虑以下 String.Format 行:

String.Format("The number of people is {0}/{1}", numPeople)

这将编译,但会导致运行时错误,因为编译器不会检查参数的数量是否与占位符匹配。