C#:$ 符号

在C#中,$ 符号用于‌字符串内插‌(String Interpolation),这是一种简洁、可读性更高的方式来拼接字符串和表达式。‌

在字符串字面量前加上 $ 符号,即可将该字符串标识为内插字符串。‌

通过将变量、表达式或方法调用放在 {} 中,可以直接嵌入字符串中。例如:

var name = "Alice";

var message = $"Hello, {name}!";

Console.WriteLine(message); // 输出: Hello, Alice!

‌1、支持任意表达式‌:

内插字符串可以包含任何有效的C#表达式,如计算、方法调用等。‌

示例:

double a = 3, b = 4;

Console.WriteLine($"Area of the right triangle with legs of {a} and {b} is {0.5 * a * b}");

// 输出: Area of the right triangle with legs of 3 and 4 is 6

2、 ‌格式化选项‌:

可以通过 :formatString 指定格式(如日期、数字格式),或使用 ,width 控制对齐。‌

示例:

var date = DateTime.Now;

Console.WriteLine($"Today is {date:yyyy-MM-dd}, time is {date:HH:mm}");

‌3、与原始字符串结合‌:

可与 @ 符号结合使用(即 @),创建‌内插的逐字字符串‌,适用于多行文本或SQL语句,同时保留换行和转义字符。‌

示例:

var sql = $@"INSERT INTO Users (Name, Age) VALUES ('{name}', {age})";

4、注意事项‌:

  • 内插表达式必须用 {{ 和 }} 包裹,以避免与普通大括号冲突。‌
  • 如果变量值为 null,会自动转换为空字符串。‌
  • 在SQL等场景中,直接拼接可能引发注入风险,建议优先使用参数化查询。‌

5、场景

‌可读性更高‌:相比传统的 string.Format(),内插语法更直观易懂。‌

‌适用场景‌:日志输出、动态SQL构建、用户消息生成等需要频繁拼接字符串的场景。‌

相关推荐
行云流水20001 天前
青少年编程考级覆盖哪些科目?图形化Python C++全包含
开发语言·c++·青少年编程
爱吃大芒果1 天前
Flutter 与原生交互入门:MethodChannel 基础使用教程
开发语言·flutter·华为·cocoa·交互·harmonyos
charlie1145141911 天前
快速Git教程
开发语言·git·学习·版本控制
2401_860494701 天前
在React Native中开发进度条组件,可以使用多种方式来实现,包括使用内置的`ProgressViewharmony`(仅限harmony)
javascript·react native·react.js
snowfoootball1 天前
java面向对象进阶
java·开发语言
weixin_307779131 天前
Jenkins JUnit插件:自动化测试报告与质量守护者
开发语言·junit·单元测试·自动化·jenkins
凌霜残雪1 天前
将 C# 项目打包为单一 EXE 的完整指南
开发语言·c#·fody.costura
csbysj20201 天前
Highcharts 测量图:深入解析与最佳实践
开发语言
一人の梅雨1 天前
淘宝商品详情接口深度解析:从 Sign 签名动态生成到多端数据全息重构
开发语言·javascript·重构