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

相关推荐
用户298698530143 小时前
在 React 中使用 JavaScript 将 Excel 转换为 SVG
前端·javascript·react.js
labixiong3 小时前
手写Promise--微任务、静态方法、async/await 全搞懂(三)
前端·javascript
铁皮饭盒5 小时前
3行代码搞定页面截图,Bun.WebView真的简单
javascript
hez201015 小时前
在 .NET 上构建超大托管数组
c#·.net·.net core·gc·clr
kyriewen18 小时前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来
前端·javascript·面试
山河木马19 小时前
矩阵专题2-怎么创建视图矩阵(uViewMatrix)
javascript·webgl·计算机图形学
tangdou36909865520 小时前
AI真好玩系列-2分钟快速了解DeepAgents | Quick Guide to DeepAgents in 2 Minutes
前端·javascript·后端
张元清20 小时前
React useIntersectionObserver Hook:懒加载与可见性检测(2026)
javascript·react.js
彭于晏爱编程20 小时前
纯 JS + Node,一个下午手搓了能读懂公司代码的 AI 助手,老板以为我转行了
前端·javascript
妙码生花21 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十四):眨眼小人登录页制作
前端·javascript·ai编程