简要解释一下Java中String、StringBuffer和StringBuilder类的区别?


java.lang包的String类表示字符字符串。Java程序中的所有字符串字面量,例如“abc”,都实现为此类的实例。字符串是常量,创建后其值无法更改。

当需要对字符字符串进行大量修改时,可以使用StringBufferStringBuilder类。

与String不同,StringBuffer和StringBuilder类型的对象可以反复修改,而不会留下很多新的未使用的对象。

StringBuilder类从Java 5开始引入,StringBuffer和StringBuilder的主要区别在于StringBuilder的方法不是线程安全的(未同步)。

建议尽可能使用StringBuilder,因为它比StringBuffer更快。但是,如果需要线程安全,最好的选择是StringBuffer对象。

示例

 在线演示

public class Sample {
   public static void main(String args[]){
      String str = new String("Hello how are you");
      StringBuffer sb = new StringBuffer(str);
      String str2 = sb.reverse().toString();
      System.out.println(str2);
   }
}

输出

uoy era woh olleH

更新于:2019年7月30日

556 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告