全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

C#怎么进行字符串拼接 C# String和StringBuilder性能对比

C#字符串拼接应按场景选择:少量拼接用$""或+,频繁拼接用StringBuilder;因string不可变,循环中s+="x"会产生大量临时对象,而StringBuilder通过可变缓冲区和预分配容量显著提升性能并减少内存分配。

C#字符串拼接的常用方式

在C#中,字符串拼接有多种写法,最常见的是用+号、$"插值字符串(C# 6.0+)、string.Concatstring.Join,以及StringBuilder。选择哪种方式,关键看场景:拼接次数少、字符串小,用$"+完全没问题;频繁修改或循环拼接,就得上StringBuilder

String拼接的底层机制和性能隐患

string在C#中是不可变(immutable)类型。每次用+$"拼接,都会创建一个新字符串对象,原字符串会被丢弃(等待GC回收)。比如:

var s = "a" + "b" + "c" + "d"; —— 看似一次操作,编译器会优化成string.Concat,很快;

但如果是循环中这样写:s += "x";(比如10000次),就会产生近10000个中间字符串对象,内存压力大,GC频繁,性能明显下降。

StringBuilder为什么更快

StringBuilder是可变的字符缓冲区,默认内部用char[]数组存储,支持追加、插入、替换等操作而不反复分配新内存。它通过预分配容量(Capacity)和动态扩容(通常是2倍增长)来减少内存重分配次数。

使用建议:

  • 明确知道最终长度时,初始化时指定Capacity,避免多次扩容
  • 循环拼接、日志组装、HTML生成等场景优先用StringBuilder
  • 拼接完用ToString()获取最终字符串,之后可复用或清空(Clear()

简单性能对比示例(10万次拼接)

粗略测试(Release模式,关闭调试器附加):

  • string +=:约 80–120ms,内存分配超100MB
  • $"(单次多段):约 0.1ms(编译期优化强,但不适用于循环)
  • StringBuilder(初始容量设为足够大):约 0.3–0.5ms,内存分配极少

差距在量级上——不是“快一点”,而是“快两个数量级+省大量内存”。不过日常拼接3–5个变量,真没必要换StringBuilder,可读性和简洁性更重要。

基本上就这些。选对工具比死抠语法重要:小拼接用$",大拼接用StringBuilder,别让+=在循环里悄悄拖垮性能。


# html  # 工具  # c#  # 为什么  # String  # 字符串  # char  # 循环  # var  # 对象  # 的是  # 就会  # 设为  # 适用于  # 而不  # 更重要  # 更快  # 就得  # 哪种  # 但不 


相关文章: 家庭建站与云服务器建站,如何选择更优?  如何选择网络建站服务器?高效建站必看指南  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  公司网站制作费用多少,为公司建立一个网站需要哪些费用?  网站插件制作软件免费下载,网页视频怎么下到本地插件?  建站主机系统SEO优化与智能配置核心关键词操作指南  如何快速搭建响应式可视化网站?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  如何设计高效校园网站?  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  昆明网站制作哪家好,昆明公租房申请网上登录入口?  如何在建站之星绑定自定义域名?  建站之星如何快速生成多端适配网站?  建站之星备案流程有哪些注意事项?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  如何通过虚拟主机快速完成网站搭建?  建站之星导航菜单设置与功能模块配置全攻略  网站按钮制作软件,如何实现网页中按钮的自动点击?  ui设计制作网站有哪些,手机UI设计网址吗?  重庆市网站制作公司,重庆招聘网站哪个好?  C++中引用和指针有什么区别?(代码说明)  网站企业制作流程,用什么语言做企业网站比较好?  建站之星如何实现网站加密操作?  如何在万网自助建站中设置域名及备案?  C++时间戳转换成日期时间的步骤和示例代码  建站之星如何开启自定义404页面避免用户流失?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  如何在VPS电脑上快速搭建网站?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  宁波自助建站系统如何快速打造专业企业网站?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  如何正确下载安装西数主机建站助手?  在线制作视频网站免费,都有哪些好的动漫网站?  安徽网站建设与外贸建站服务专业定制方案  如何通过西部建站助手安装IIS服务器?  建站之星体验版:智能建站系统+响应式设计,多端适配快速建站  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  如何批量查询域名的建站时间记录?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  子杰智能建站系统|零代码开发与AI生成SEO优化指南  TestNG的testng.xml配置文件怎么写  如何规划企业建站流程的关键步骤?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  建站之星微信建站一键生成小程序+多端营销系统  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  如何快速搭建支持数据库操作的智能建站平台?  seo网站制作优化,网站SEO优化步骤有哪些?  GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?  C#如何在一个XML文件中查找并替换文本内容  可靠的网站设计制作软件,做网站设计需要什么样的电脑配置? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。