如何在字符串文字中使用字符串插值?

14

我正在尝试做类似的事情

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

有什么办法可以做到这一点吗?

2个回答

25

你应该添加(),因为:也用于string格式化:

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

14

插值字符串可以包含格式定义,格式定义与变量名之间用冒号分隔。

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

由于条件运算符 (?:) 也使用冒号,因此您需要使用大括号来清晰地告诉编译器您不想要格式说明符:

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

2
提供准确的解释,+1 - Dmitry Bychenko
2
现在我明白了。谢谢! - Volker

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接