码迷,mamicode.com
首页 > 其他好文 > 详细

String ,Stringbuffer,Stringbuilder有什么区别

时间:2018-11-20 19:39:05      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:可变   osi   stringbu   build   inter   pos   article   col   返回   

一:string是不可变的。stringbuffer是拼接字符串线程安全的。stringbuilder线程不安全

二:stringbuffer和stringbuilder底层是char或byte(jdk9)数组,构建初始长度是16.

三:jvm会将所有的字符串缓存起来。当调用“”.intern()方法就会从缓存中查,有就返回实例,没有就建缓存。jdk6是这样的。但是不推荐使用,因为他存在perngon,永久代,fullGc才可以清理。后续的版本放在了堆中,jdk8放在了元数据区。

四:char是俩个byte的大小

String strByBuilder = new Str...

极客时间版权所有: https://time.geekbang.org/column/article/7349

String strByBuilder = new Str...

极客时间版权所有: https://time.geekbang.org/column/article/7349

String ,Stringbuffer,Stringbuilder有什么区别

标签:可变   osi   stringbu   build   inter   pos   article   col   返回   

原文地址:https://www.cnblogs.com/hanguocai/p/9990633.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!