java语言有哪几种字符串类?各有哪些特点?存储结构分别是怎样的?

原问题:java语言有哪几种字符串类?各有哪些特点?存储结构分别是怎样的?
分类:编程开发 > 最后更新时间:【2016-12-11 19:24:31】

最佳答案

Java中唯一的字符串类是String,这是一个不可变的(final)类,也就是说它没有子类,它实现了CharSequence接口。

另外Java中还有两个字符串缓存类,一个是StringBuffer,一个是StringBuilder,它们的区别是,StringBuffer不是线程安全的,而StringBuilder是线程安全的,由于String是不可变的,所以当我们执行如下代码时会有额外的开销

String str = "abc";

str += "d";

此时str指向一个新的字符串对象"abcd",而原来"abc"还在内存中

StringBuffer和StringBuilder避免了这种情况,通常,我们如果要累加字符串时,比如在使用Hibernate时拼接SQL语句的时候,可以先用这两个类把SQL语句拼接好之后再直接转换成String。

最佳答案由网友  城乡结合部来的  提供
公告: 为响应国家净网行动,部分内容已经删除,感谢网友理解。
18

分享到:

其他回答

其它网友回答:
额,一共就一种诶,java.lang.String

其它网友回答:
字符串类 String 是 不可变序列    引入了常量池机制

其它网友回答:
看你需要找一本入门的数看看。

    推荐