1.Java 1.8以及之前 String由char数组存储,1.9开始由byte数组存储
/** The value is used for character storage. */ private final char value[];
2.String实现了Comparable<String>,可以进行字符串比较
3.String.valueOf(Object obj) 转成String
4.String有两个常用实现类StringBuffer和StringBuilder,都是继承了AbstractStringBuilder类。
StringBuilder线程不安全,StringBuffer线程安全(因为加了synchronized关键字修饰方法)
5.String.format(String format, Object... args) 可以格式化字符串,替换其中的参数。
String str = String.format("Hi,%s", "小超");
6.org.apache.commons.lang3.StringUtils类提供了很多实用方法
比如StringUtils.isNotEmpty(),StringUtils.defaultIfBlank()
当使用StringUtils.defaultString(String str, String defaultStr)时有个坑,可能返回“”空字符串,导致defaultStr失效。