原文地址:String in Java
今天看到一篇文章,觉得很有用,特意记下来。
总结:
区别:
1.String是不可变的,原因是其用于存储字符序列的char[] value数组被用final修饰了。
2.StringBuffer的char[] value数组初始化长度是参数长度+16,所以可以使用其append()方法追加字符串。
3.StringBuilder与StringBuffer类似,不同点是其方法没有被关键字synchronized修饰,所以它线程不安全,但它的效率要比StringBuffer高。
效率:
1.直接使用字符串常量“+”连接效率最高,例:String str = "abc"+"d";。
2.append()方法的效率高于String对象的"+"连接运算。
3.使用String类的intern()方法,可缓解因多次创建对象带来的程序低效问题。
String,StringBuffer,StringBuilder区别与效率
转载
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
String、StringBuffer与StringBuilder之间区别
最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,StringBuilder的东西,现在
String StringBuilder StringBuffer 字符串 数据 -
string stringbuffer stringbuilder区别
string 是不可变类,内部数据结构为final char数组,字符串拼接时会创建新的string对
数据结构与算法 java System sed List