Java基础——浅谈String、StringBuffer和StringBuilder的区别
来源:互联网 发布:高达versus 知乎 编辑:程序博客网 时间:2024/05/24 04:29
String:
String是一个被final修饰的类,不能被继承。String的值不可变,我们每次操作一个String就会生成一个String对象,这不仅会降低效率,还会造成内存浪费。所以当我们要操作大量数据时,不建议采用String,String只适用于少量数据操作。
StringBuffer:
可变类,(多线程)线程安全的字符串操作类,任何对它指向的字符串的操作都不会产生新的对象。 每个StringBuffer对象都有一定的缓冲区容量,当字符串大小没有超过容量时,不会分配新的容量,当字符串大小超过容量时,会自动增加容量。
StringBuffer buf=new StringBuffer(); //分配长16字节的字符缓冲区
StringBuffer buf=new StringBuffer(512); //分配长512字节的字符缓冲区
StringBuilder:
可变类,(单线程)线程不安全的字符串操作类,其方法和StringBuffer相同。对于单线程操作字符串,StringBuilder略快于StringBuffer。对于经常要改变值的字符串应该使用StringBuffer和StringBuilder类,单线程字符串操作应使用StringBuilder,多线程操作应用StringBuffer。
一般情况下,速度从快到慢:StringBuilder>StringBuffer>String,这种比较是相对的,不是绝对的。
0 0
- Java基础——浅谈String、StringBuffer和StringBuilder的区别
- Java基础之String,StringBuffer与StringBuilder的区别浅谈
- JAVA基础——String,StringBuilder,StringBuffer的区别。
- 【java】——String、 StringBuffer和StringBuilder的区别
- 【java基础】String、StringBuilder和StringBuffer的区别
- Java基础12:String、StringBuffer和StringBuilder的区别
- Java(5):基础:String、StringBuffer和StringBuilder的区别
- java基础 String 、StringBuffer、StringBuilder的区别
- java-String StringBuffer和StringBuilder的区别
- Java:String、StringBuffer和StringBuilder的区别
- Java:String、StringBuffer和StringBuilder的区别
- java:String、StringBuffer和StringBuilder的区别
- Java:String、StringBuffer和StringBuilder的区别
- Java:String、StringBuffer和StringBuilder的区别
- Java:String、StringBuffer和StringBuilder的区别
- Java:String、StringBuffer和StringBuilder的区别
- Java:String、StringBuffer和StringBuilder的区别
- Java:String、StringBuffer和StringBuilder的区别
- red hat yum源
- 执行RadioGroup的check(Id)方法,会触发onCheckedChanged多次
- bzoj 2733【hnoi2012】永无乡(平衡树)
- 用apidoc 生成在线接口文档
- POJ2104 区间第k大(版本1)
- Java基础——浅谈String、StringBuffer和StringBuilder的区别
- [C++]google perftools分析程序CPU / 内存的使用
- 链表(demo)
- js中匿名函数的写法
- (转载)卓开发中的双日期选择控件(可隐藏日,只显示年月)
- ZARCHIVE_DELETE
- 设计模式随笔之代理模式(Proxy)
- php抓取微信文章图片保存到本地
- BufferedReader