- Java中字符串拼接不要直接使用+拼接。
- 使用StringBuilder或者StringBuffer时,尽可能准确地估算capacity,并在构造时指定,避免内存浪费和频繁的扩容及复制。
- 在没有线程安全问题时使用StringBuilder, 否则使用StringBuffer。
- 两个字符串拼接直接调用String.concat性能最好。
- 用equals时总是把能确定不为空的变量写在左边,如使用"".equals(str)判断空串,避免空指针异常。
- 第二点是用来排挤第一点的.. 使用str != null && str.length() != 0来判断空串,效率比第一点高。
- 在需要把其他对象转换为字符串对象时,使用String.valueOf(obj)而不是直接调用obj.toString()方法,因为前者已经对空值进行检测了,不会抛出空指针异常。
- 使用String.format()方法对字符串进行格式化输出。
- 在JDK 7及以上版本,可以在switch结构中使用字符串了,所以对于较多的比较,使用switch代替if-else。