C#中的StringBuilder.EnsureCapacity()方法用于确保StringBuilder实例的容量至少为指定值。
语法如下-
public int EnsureCapacity (int capacity);
以上,参数容量是要确保的最小容量。
现在让我们看一个例子-
using System; using System.Text; public class Demo{ public static void Main(){ StringBuilder strBuilder = new StringBuilder("jhbjhb"); Console.WriteLine("String = "+strBuilder); Console.WriteLine("StringBuilder capacity= "+strBuilder.Capacity); strBuilder.EnsureCapacity(20); Console.WriteLine("StringBuilder capacity= "+strBuilder.Capacity); char[] arr = new char[5] {'a', 'b', 'c', 'd', 'e'}; strBuilder.CopyTo(1, arr, 1, 3); Console.WriteLine("\nCopied String in char array..."); Console.WriteLine(arr); } }
输出结果
这将产生以下输出-
String = jhbjhb StringBuilder capacity= 16 StringBuilder capacity= 20 Copied String in char array... ahbje
现在让我们来看另一个示例-
using System; using System.Text; public class Demo{ public static void Main(){ StringBuilder strBuilder = new StringBuilder("Katie"); Console.WriteLine("String = "+strBuilder); Console.WriteLine("\nStringBuilder capacity = "+strBuilder.Capacity); Console.WriteLine("StringBuilder length = "+strBuilder.Length); strBuilder.EnsureCapacity(35); Console.WriteLine("\nStringBuilder capacity= "+strBuilder.Capacity); Console.WriteLine("StringBuilder length = "+strBuilder.Length); strBuilder.EnsureCapacity(0); strBuilder.Length = 0; Console.WriteLine("\nStringBuilder capacity= "+strBuilder.Capacity); Console.WriteLine("StringBuilder length = "+strBuilder.Length); } }
输出结果
这将产生以下输出-
String = Katie StringBuilder capacity = 16 StringBuilder length = 5 StringBuilder capacity= 35 StringBuilder length = 5 StringBuilder capacity= 35 StringBuilder length = 0