第一天

作者: 炉石旁的猫 | 来源:发表于2021-09-28 20:24 被阅读0次

    2022准备面试,阅读一些源码,提升自己.

    一.String Stringbuffer Stringbuild

    String,StringBuffer,StringBuilder最终底层存储与操作的都是char数组.但是String里面的char数组是final的,而StringBuffer,StringBuilder不是,也就是说,String是不可变的,想要新的字符串只能重新生成String.而StringBuffer和StringBuilder只需要修改底层的char数组就行.相对来说,开销要小很多.
    String的大多数方法都是重新new一个新String对象返回,频繁重新生成容易生成很多垃圾.
    还是那句古话,StringBuffer是线程安全的,StringBuilder是线程不安全的.因为StringBuffer的方法是加了synchronized锁起来了的,而StringBuilder没有.
    增删比较多时用StringBuffer或StringBuilder(注意单线程与多线程)。实际情况按需而取吧,既然已经知道了里面的原理

    二. ArrayList

    相关文章

      网友评论

          本文标题:第一天

          本文链接:https://www.haomeiwen.com/subject/exyrnltx.html