字符串那些事

常量池

1、java中直接使用双引号展示的字符串会在常量池中直接创建
2、string.intern会先尝试在常量池中查找对象,如果存在就返回该对象在常量池中
的地址找不到就会先放入到常量池再返回地址
3、java7及以上,常量池放到了heap存储当中

使用建议

1、stringbuilder vs +
一般情况下+的操作编译器会做优化,为stringbuilder操作
问题:
More importantly given we have only 3 properties it might not make a difference, 
but at what point do you switch from concat to builder?
答案:
At the point where you're concatenating in a loop - that's usually when the 
compiler can't substitute StringBuilder by itself.
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •   需要说明的一点是,这篇文章是以《深入理解Java虚拟机》第二版这本书为基础的,这里假设大家已经了解了JVM的运...
    Geeks_Liu阅读 14,076评论 5 44
  • 前面我们总结了数组操作,这里我们将总结字符串相关的知识,除了总结String的API用法,同时我们还会总结一些相关...
    HCherisher阅读 3,648评论 2 6
  • 这篇文章是我之前翻阅了不少的书籍以及从网络上收集的一些资料的整理,因此不免有一些不准确的地方,同时不同JDK版本的...
    高广超阅读 15,690评论 3 83
  • 问:Java 的 == 与 equals 有什么区别? 答:对于 ==,如果作用于基本数据类型的变量,则直接比较其...
    Little丶Jerry阅读 455评论 0 0
  • 今晨北京出现大雾(脉)天气,可见度十分低。此次大雾不应该全是雾霾,一大半可能为真正的雾,可是在北京的大多数人眼里,...
    杨梅泡酒阅读 282评论 0 0