Java:String、StringBuilder、StirngBuffer的不同特性

Java:String、StringBuilder、StirngBuffer的不同特性

一、基本介绍

String: 是不可变类,即一旦一个String对象被创建以后,包含在这个对象中的字符序列是不可改变的,直至这个对象被销毁。再次给String a赋值时,并不是对原来堆中实例对象进行重新赋值,而是生成一个新的实例对象,并且指向“x’x’x”这个字符串,String a则指向最新生成的实例对象,之前的实例对象仍然存在,如果没有被再次引用,则会被垃圾回收。

StringBuffer: 线程安全,所以性能略低。 StringBuffer对象则代表一个字符序列可变的字符串,当一个StringBuffer被创建以后,通过StringBuffer提供的append()、insert()、reverse()、setCharAt()、setLength()等方法可以改变这个字符串对象的字符序列。一旦通过StringBuffer生成了最终想要的字符串,就可以调用它的toString()方法将其转换为一个String对象。
StringBuilder线程不安全,所以性能略高。 StringBuilder和StringBuffer基本相似,两个类的构造器和方法也基本相同。

你可能感兴趣的:(JAVA知识散集,字符串,java,编程语言)