如何在Dart中打印美元符号$

时间:2014-02-20 05:17:17

标签: syntax variables dart

我需要在变量之前在Dart中打印一个美元符号。例如:

void main()
{
  int dollars=42;
  print("I have $dollars."); // I have 42.
}

我希望输出为:我有42美元。我怎样才能做到这一点?感谢。

2 个答案:

答案 0 :(得分:14)

飞镖弦可以是原始的还是......不是原始的(正常?煮熟?解释?没有正式名称)。我会在这里使用“解释”,因为它描述了你遇到的问题。

在原始字符串中,“$”和“\”表示没什么特别的,它们只是与其他字符一样的字符。 在解释的字符串中,“$”开始插值,“\”开始转义。

由于你想要“$ dollar”的插值,你不能逐字地使用“$”,所以你需要逃避它:

int dollars = 42;
print("I have \$$dollars.");

如果您不想使用转义符,可以组合原始和解释部分的字符串:

int dollars = 42;
print(r"I have $" "$dollars."); 

两个相邻的字符串文字组合成一个字符串,即使它们是不同类型的字符串。

答案 1 :(得分:4)

您可以使用反斜杠转义:

int dollars=42;
print("I have \$$dollars."); // I have $42.

当您使用文字而不是变量时,您也可以使用原始字符串:

print(r"I have $42."); // I have $42.