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构建、用户消息生成等需要频繁拼接字符串的场景。‌

相关推荐
小王不爱笑1321 天前
IO 模型
开发语言·python
知我Deja_Vu1 天前
【避坑指南】ConcurrentHashMap 并发计数优化实战
java·开发语言·python
AI+程序员在路上1 天前
CANopen 协议:介绍、调试命令与应用
linux·c语言·开发语言·网络
2401_831824961 天前
基于C++的区块链实现
开发语言·c++·算法
qq_406176141 天前
深入浅出 Pinia:Vue3 时代的状态管理新选择
javascript·vue.js·ecmascript
m0_518019481 天前
C++与机器学习框架
开发语言·c++·算法
ZTLJQ1 天前
深入理解逻辑回归:从数学原理到实战应用
开发语言·python·机器学习
qq_417695051 天前
C++中的代理模式高级应用
开发语言·c++·算法
德育处主任Pro1 天前
前端元素转图片,dom-to-image-more入门教程
前端·javascript·vue.js
波波0071 天前
每日一题:.NET 中的“反射”是什么?
开发语言·.net