String是一串不可变的字符串
StringBuffer是线程安全的,拼接字符串成一个string
StringBuilder是非线程安全的,拼接字符串成一个string
小技巧
直接拼接string会产生新的对象,所以首选用stringBuilder,如果字符串超过16个字符的话,为了较少扩容带来的性能损耗,可以先设置一个大的容量。
字符编码
String(Byte[] bytes)先去找jvm中的file.encoding,没有用UTF-8, 再不行用ISO-8859-1
如何查看和设置file.encoding
java -XshowSettings:all -version
java -XshowSettings:vm -version
java -XshowSettings:properties -version
java -XshowSettings:locale -version
System.getproperty("file.encoding")