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

相关推荐
C^h3 小时前
c++ string
开发语言·c++
raindayinrain3 小时前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的3 小时前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao3 小时前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
她说可以呀3 小时前
Vue插槽
前端·javascript·vue.js
qq_448011164 小时前
Vue + Jinja2两套模版与法冲突造成undefinedError
前端·javascript·vue.js
学逆向的4 小时前
C 局部静态变量
c语言·开发语言·网络安全
大都督会赢的5 小时前
C++第一节课
开发语言·c++
“AI国潮设计-小江”5 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc
小王C语言5 小时前
Qt常用控件:容器类控件,标题分组框、标签页(浏览器标签)
开发语言·qt