string 和StringBuilder的引用的区别
来源:互联网 发布:机械类软件 编辑:程序博客网 时间:2024/05/16 09:31
1. string a=“a”;
a+=“b”;
a+=“c”;
.......
String 对象串联操作总是用现有字符串和新数据创建新的对象。
StringBuilder 对象维护一个缓冲区,以便容纳新数据的串联。如果有足够的空间,新数据将被追加到缓冲区的末尾;否则,将分配一个新的、更大的缓冲区,原始缓冲区中的数据被复制到新的缓冲区,然后将新数据追加到新的缓冲区。
所以不要使用上面的方式追加字符串,因为每次都开辟新的内存空间,用StringBuilder更好。
2. StringBuilder为引用类型(Class也是,所以对一个方法传递类作为参数,对其修改的会在方法外体现出来,无需ref和out)
class Program
{
static void Main(string[] args)
{
String strName; ;
strName = "aobama";
StringBuilder sbName = new StringBuilder();
sbName.Append("shiyuantailang");
changeStr(strName);
changeStr(sbName);
Console.WriteLine(strName); // aobama
Console.WriteLine(sbName.ToString()); // shiyuantailang,aobama
}
static void changeStr(String str)
{
str = "ladeng";
}
static void changeStr(StringBuilder sb)
{
sb.Append(",aobama");
}
}
- string 和StringBuilder的引用的区别
- 使用StringBuilder, StringBuilder和String的区别
- 使用StringBuilder, StringBuilder和String的区别
- 使用StringBuilder, StringBuilder和String的区别
- 使用StringBuilder, StringBuilder和String的区别
- StringBuilder 和 String 的区别?
- StringBuilder 和 String 的区别
- String 和 StringBuilder的区别
- String 和 StringBuilder 的区别
- string 和stringbuilder的区别
- string 和stringbuilder的区别
- StringBuilder和String的区别
- string 和 StringBuilder 的区别
- string 和stringbuilder的区别
- string 和 stringBuilder的区别
- string 和StringBuilder的区别
- string和stringbuilder的区别
- string和stringbuilder的区别
- Android获取手机号/手机串号 现在已经不能获取了
- 一日一点RakNet(55)--Crash Reporter(崩溃报告器)
- javascript求教高手(连数据库没问题)
- php/回顾1
- LaTeX如何设行间距为20磅
- string 和StringBuilder的引用的区别
- 公司间转移过帐介绍与IMG设置(公司间采购订单+交易价格确定+流程测试)
- EXTJS 专题 TreePanel
- 正则表达式函数待完善
- Java中实现对象的Clone
- 举例详细说明javascript作用域、闭包原理以及性能问题
- 假如没有任意一列可以做为排序,可以参考以下语句建立分页存储
- Jdbc调用存储过程
- 颠覆社交购物的Fab3.0 同性恋网站的华丽转身