我实际上需要在Dart中的变量前面打印美元符号。例如:
void main()
{
int dollars=42;
print("I have $dollars."); // I have 42.
}
我希望输出是:我有$ 42。我怎样才能做到这一点?谢谢。
最佳答案
Dart字符串可以是原始字符串,也可以是非原始字符串(正常?已煮熟?已解释?没有正式名称)。我将在此处使用“解释”,因为它描述了您遇到的问题。
在原始字符串中,“$”和“\”没有什么特别的含义,它们就像其他字符一样。
在解释的字符串中,“$”开始插值,“\”开始转义。
由于您希望对“$ dollars”进行插值,因此不能直接使用“$”,因此需要对其进行转义:
int dollars = 42;
print("I have \$$dollars.");
如果您不想使用转义符,则可以将原始部分和解释部分中的字符串组合在一起:
int dollars = 42;
print(r"I have $" "$dollars.");
即使两个相邻的字符串文字是不同类型的字符串,它们也会合并为一个字符串。