深入理解String、StringBuffer、StringBuilder三者的区别

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-1 11:50   38   0

理解String、StringBuffer、StringBuilder不要再死记

  1. String的长度是不可变的,一般的话在常量池中进行操作。
            String s1 = "abc";
            String s2 = "abc";
            String s3 = new String("abc");
            System.out.println(s1 == s2);   //true
            System.out.println(s1 == s3);   //false

  2. StringBuffer是可变的字符串,其中的append方法就可以改变字符串的内容,如果经常需要对字符串的内容进行修改时,就需要使用StringBuffer,查看他的源码,发现它的方法有Synchronized关键字修饰,代表它是线程安全的,适合与多线程操作。
  3. StringBuilder是从JDK1.5开始的一个为StringBuffer提供的一个单线程使用的等价类,通常情况下应该优先选择StringBuilder,因为它是线程不安全的,执行的效率比较快。
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP