在 C# 中,StringBuilder 是一个用于高效地处理字符串操作的类。与 string 类型不同,StringBuilder 类允许对字符串进行可变的、原地的修改,而无需每次都创建新的字符串实例。这在需要频繁拼接、修改或构建大型字符串时非常有用。 下面是一些关于 StringBuilder 的详细说明和示例代码:
StringBuilder sb = new StringBuilder(); // 创建一个空的 StringBuilder
StringBuilder sb = new StringBuilder("Hello"); // 使用初始字符串创建 StringBuilder
StringBuilder sb = new StringBuilder(10); // 指定初始容量创建 StringBuilder
StringBuilder sb = new StringBuilder();
sb.Append("Hello"); // 添加字符串到 StringBuilder
sb.AppendLine(" World!"); // 添加带换行符的字符串
string name = "John";
int age = 30;
sb.AppendFormat("My name is {0} and I'm {1} years old.", name, age); // 格式化字符串并追加
Console.WriteLine(sb.ToString()); // 输出 "Hello World!\nMy name is John and I'm 30 years old."
StringBuilder sb = new StringBuilder("Hello, World!");
sb.Insert(7, "Awesome "); // 在指定位置插入字符串
Console.WriteLine(sb.ToString()); // 输出 "Hello, Awesome World!"
sb.Replace("Hello", "Hi"); // 替换字符串中的内容
Console.WriteLine(sb.ToString()); // 输出 "Hi, Awesome World!"
StringBuilder sb = new StringBuilder("Hello, World!");
sb.Remove(7, 8); // 从指定位置开始删除指定数量的字符
Console.WriteLine(sb.ToString()); // 输出 "Hello!"
sb.Clear(); // 清空 StringBuilder
Console.WriteLine(sb.ToString()); // 输出 ""
StringBuilder sb = new StringBuilder("Hello");
char ch = sb[1]; // 获取指定索引处的字符
Console.WriteLine(ch); // 输出 'e'
sb[4] = 'o'; // 设置指定索引处的字符
Console.WriteLine(sb.ToString()); // 输出 "Hollo"
StringBuilder sb = new StringBuilder("Hello");
int length = sb.Length; // 获取 StringBuilder 的长度
Console.WriteLine(length); // 输出 5
int capacity = sb.Capacity; // 获取 StringBuilder 的容量
Console.WriteLine(capacity); // 输出 16
sb.EnsureCapacity(20); // 确保 StringBuilder 的容量至少为指定值
StringBuilder 提供了一种高效处理字符串操作的方式,特别是在需要频繁修改字符串内容时。通过使用 Append、Insert、Replace、Remove 等方法,以及索引器和属性,可以灵活地操作和修改 StringBuilder 对象中的字符串内容。 请注意,最后使用 ToString 方法将 StringBuilder 转换为最终的字符串表示形式。 希望以上示例代码能够帮助您理解和应用 StringBuilder 类的功能。