在Java 1.7+上我们是否还需要使用StringBuffer.append转换"this string"+"should"+"be"+"join"以获得最佳实践?
Evg*_*eev 10
1)常量表达式(JLS 15.28)就像"this string" + " should" + " be" + " joined"不需要StringBuilder一样,因为它在编译时计算成一个字符串"this string should be joined"
2)对于非常量表达式,编译器将自动应用StringBuilder.也就是说,"string" + var相当于new StringBuilder().append("string").append(var).toString();
我们只需要在动态构造字符串时显式使用StringBuilder,就像这里一样
StringBuilder s = new StringBuilder();
for (String e : arr) {
s.append(e);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
489 次 |
| 最近记录: |