C# StringBuilder

在 C#中, StringBuilder 是一个用于创建可变字符串的类。它属于 System.Text 命名空间。 StringBuilder 提供了一种高效的方式来修改字符串,特别是当你需要多次修改一个字符串时,比如在循环中拼接字符串。使用 StringBuilder 比使用不可变的 string 类型更高效,因为它避免了在每次修改时创建新的字符串实例。

以下是一些基本的 StringBuilder 使用方法:

创建 StringBuilder 实例:

csharp 复制代码
StringBuilder sb = new StringBuilder();

追加字符串:

csharp 复制代码
sb.Append("Hello, ");
sb.Append("World!");

插入字符串:

csharp 复制代码
sb.Insert(0, "Welcome to ");

删除字符串:

csharp 复制代码
sb.Remove(0, 12); // 删除前12个字符

替换字符串:

csharp 复制代码
sb.Replace("World", ".NET");

清空 StringBuilder:

csharp 复制代码
sb.Clear();

转换 StringBuilder 为字符串:

csharp 复制代码
string result = sb.ToString();

使用容量:

StringBuilder 有一个 Capacity 属性,你可以设置它的初始容量,以便在预期会有很多修改时减少重新分配内存的次数。

使用链式调用:

Append, Insert, Remove, Replace 等方法都返回 StringBuilder 实例本身,允许链式调用:

csharp 复制代码
sb.Append("Hello").Append(" ").Append("World!");

总结

使用 StringBuilder 是处理大量字符串操作时提高性能的一种有效方式。

相关推荐
学长毕设16 分钟前
基于SpringBoot的实验室资产管理系统
java·spring boot·后端
她说可以呀1 小时前
Vue插槽
前端·javascript·vue.js
qq_448011161 小时前
Vue + Jinja2两套模版与法冲突造成undefinedError
前端·javascript·vue.js
zzu123zsw2 小时前
从臃肿的模板调用到声明式契约:深入 UniHttp 动态代理与多渠道生命周期扩展
java·spring boot·microsoft·unihttp
aixingpan2 小时前
aixingpan.cn API开发文档:前端查询夏令时和时区接口指南
前端·php
2601_958352902 小时前
23.5×19mm 换掉一整条音频链?|A-68 集成了什么:ADC / DAC / 24.576MHz 时钟 / AEC / 波束降噪,主控仅需 6 根线
前端·音视频·ai降噪·回声消除·语音模块
源码集结号2 小时前
云诊所门诊系统源码,基于SpringBoot+Vue.js架构,支持多租户设计与Docker容器化部署
java·spring boot·源码·医院信息系统·门诊系统·诊所系统
论文复现现场3 小时前
WRF、FEA 能用 L40S 加速吗?求解器检查、断点恢复与长期运行
java·数据库·算法·wrf·有限元分析·gpu计算·断点续算
志尊宝3 小时前
AI原生前端开发(039):AI辅助的Nuxt 4全栈开发
前端·vue.js·ai-native
啃瓜子的松鼠3 小时前
泛微OAe9-后端二开异步调用
java