如何使用字符串插值和字符串文字?

时间:2017-02-27 18:46:34

标签: c# string-interpolation

我正在尝试做类似

的事情
string heading = $"Weight in {imperial?"lbs":"kg"}"

这可行吗?

2 个答案:

答案 0 :(得分:11)

您应该添加(),因为字符串可以包含使用:的格式:

string heading = $"Weight in {(imperial ? "lbs" : "kg")}";

答案 1 :(得分:7)

插值字符串可以包含格式定义,这些格式定义通过冒号与变量名称分隔。

string formatted = $"{foo:c5}"; // 5 decimal places

由于条件运算符(?:)也使用冒号,因此必须使用大括号使编译器清楚地知道您不需要格式说明符:

string heading = $"Weight in {(imperial?"lbs":"kg")}";