StringBuilder 的容量(StringBuilder Capacity)

在使用StringBuilder 实例的时候,你不需要关心它为其存储的字符串分配了多大的内存,它会自动为字符串创建足够的内存。

Capacity 属性表明了一个StringBuilder 实例最多可以存储多少个字符,当存储的字符所需的空间大于这个数的时候,StringBuilder 会自动增大内存,增加Capacity

StringBuilder 实例的Length 属性则表示当前存储的字符串的长度。

默认情况下,Capacity 属性初始值为16,当需要更多空间的是它就会翻倍

StringBuilder sb1 = new StringBuilder();    // Len=0, Cap=16
sb1.Append("1234567890123456");             // 字符串长度=16, 容量=16
sb1.Append("z");                            // 字符串长度=17, 容量=32
sb1.Append("1234567890123456");             // 字符串长度=33, 容量=64

你也可以在构造StringBuilder 实例的时候指定初始容量:

StringBuilder sb2 = new StringBuilder(100);

原文地址:https://csharp.2000things.com/2010/08/27/71-stringbuilder-capacity/


阅读更多
文章标签: StringBuilder Capacity
个人分类: C#
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭