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 是处理大量字符串操作时提高性能的一种有效方式。

相关推荐
夜焱辰8 小时前
浏览器端 Agent 的文件版本管理:不用 Git,基于 OPFS + SQLite 自己造了一个
前端·人工智能
梦想的颜色8 小时前
TypeScript 完全指南(下):从类型体操到生产级配置
前端·javascript·typescript
刀法如飞8 小时前
AI时代:DDD领域驱动建模与Ontology语义建模的区别
java·设计模式·架构
jeffer_liu8 小时前
Spring AI 生产级实战:工具调用
java·人工智能·后端·spring·ai编程
比昨天多敲两行8 小时前
linux 线程概念与控制
java·开发语言·jvm
8Qi89 小时前
LeetCode 75:颜色分类(荷兰国旗问题)—— Java 题解 ✅
java·算法·leetcode·指针·排序
zzhongcy9 小时前
@Transactional 同类内部调用失效 + 两种自代理解决方案
java
AutumnWind04209 小时前
【Intelij IDEA使用手册】
java·ide·intellij-idea
Hi~晴天大圣9 小时前
npm使用介绍
前端·npm·node.js
888CC++10 小时前
如何在 C 语言中进行程序调试?
前端·javascript·算法