toxic2501 Asked:2020-12-14 16:10:30 +0000 UTC2020-12-14 16:10:30 +0000 UTC 2020-12-14 16:10:30 +0000 UTC 字符串前的前缀:'$' 772 浏览了我的整个 C# 参考资料,但找不到“$”是什么。 我只理解它有点类似于逐字字符串'@'。 Console.WriteLine($"?"); 这对线路有何影响? c# 2 个回答 Voted Best Answer Grundy 2020-12-14T16:50:36Z2020-12-14T16:50:36Z 字符串前的前缀$表示后面是内插字符串。 插值用于方便地构造字符串。在这种情况下,内插字符串的表达式可以看起来像一个字符串模板,其中可以使用语言表达式。 关于参数,内插字符串比复合格式更容易理解 例子: var s = $"Name = {name}, hours = {hours:hh}"; 与string.Format相比 var s = string.Format("Name = {0}, hours = {1:hh}", name, hours); 与相同string.Format的重要区别: 字符串插值在编译时转换为调用等效的 string.Format 调用。这保留了对本地化的支持(尽管仍然使用传统格式字符串),并且不会通过字符串引入任何编译后代码注入。 内插字符串在编译时被翻译成对string.Format的等效调用。这使得本地化支持和以前一样(尽管仍然使用传统的字符串格式),并且不允许在编译后将任何代码注入添加到字符串中。 此功能随C# 6的发布一起出现。 可以在MSDN 帮助中找到更多详细信息。 Сергей 2020-12-14T16:13:56Z2020-12-14T16:13:56Z 这是字符串插值,一个方便的东西,可以让你写一个表达式: int i=1; Console.WriteLine($"i={i}"); 在此处了解更多信息: https ://msdn.microsoft.com/en-us/library/dn961160.aspx
字符串前的前缀
$表示后面是内插字符串。插值用于方便地构造字符串。在这种情况下,内插字符串的表达式可以看起来像一个字符串模板,其中可以使用语言表达式。
关于参数,内插字符串比复合格式更容易理解
例子:
与string.Format相比
与相同string.Format的重要区别:
此功能随C# 6的发布一起出现。
可以在MSDN 帮助中找到更多详细信息。
这是字符串插值,一个方便的东西,可以让你写一个表达式:
在此处了解更多信息: https ://msdn.microsoft.com/en-us/library/dn961160.aspx