简要解释一下Java中String、StringBuffer和StringBuilder类的区别?
java.lang包的String类表示字符字符串。Java程序中的所有字符串字面量,例如“abc”,都实现为此类的实例。字符串是常量,创建后其值无法更改。
当需要对字符字符串进行大量修改时,可以使用StringBuffer和StringBuilder类。
与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
广告