StringBuffer
概述:线程安全的可变字符序列。
与String区别:
前者长度和内容可变可变,节省资源
后者不可变
StringBuilder
概述:线程不安全的可变字符序列。效率高,用于字符串缓冲区被单个线程使用的时候。
特点:比StringBuffer效率更高。
String,StringBuffer和StringBuilder的区别?
1、String是不可变的,StringBuffer和StringBuilder是可变的
2、StringBuffer 是同步的,数据安全,效率底。StringBuilder 是不同步的,数据不安全,效率高。(安全与否是对多线程而言的)
StringBuffer和数组的区别?
1、相同:都是容器,可以装其他数据
2、不同:前者装进去后最终都为String类型
后者:可以装任意类型的数据,但必须是同一种类型
形式参数问题
1、基本类型:形式参数的改变不影响实际参数
2、引用类型:形式参数的改变影响实际参数
注意:String作为参数传递,效果和基本类型效果一致。