Found this excerpt from the book "Thinking in Java" written by Bruce Eckel.
If you try to take shortcuts and do something like
append(a + ": " + c)
, the compiler will jump in and start making more StringBuilder objects again.
Does that mean that we shouldn't replace a group of append operations with a single line of code; e.g result.append(i + ": " + 2*i + " ")
?
StringBuilder result = new StringBuilder();
for(int i = 0; i < 25; i++) {
result.append(i);
result.append(": ");
result.append(2*i);
result.append(", ")
}
Does the above statement hold true for Java 8 as well?
Excerpt from this answer on SO: (confused me even more)
At the point where you're concatenating in a loop - that's usually when the compiler can't substitute StringBuilder by itself.
Any aspect related to preferred coding style is also welcome.