On Java 1.7+ should we still need to convert "this string" + "should" + "be" + "joined" using StringBuffer.append for best practices?
1) constant expressions (JLS 15.28) like "this string" + " should" + " be" + " joined"
do not need StringBuilder because it is calculated at compile time into one string "this string should be joined"
2) for non-constant expressions compiler will apply StringBuilder automatically. That is, "string" + var
is equivalent to new StringBuilder().append("string").append(var).toString();
We only need to use StringBuilder explicitly where a string is constructed dynamically, like here
StringBuilder s = new StringBuilder();
for (String e : arr) {
s.append(e);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With