为什么阿里推荐循环体内字符串连接使用 StringBuilder 的 append 方法

说明:下例中,反编译出的字节码文件显示每次循环都会 new 出一个 StringBuilder 对象,然后进行 append 操作,最后通过 toString 方法返回 String 对象,造成内存资源浪费。

反例:
为什么阿里推荐循环体内字符串连接使用 StringBuilder 的 append 方法
IDEA告警:

String concatenation ‘+=’ in loop
Inspection info: Reports String concatenation in loops. As every String concatenation copies the whole String, usually it is preferable to replace it with explicit calls to StringBuilder.append() or StringBuffer.append().
报告循环中的字符串连接。当每个String串联复制整个String时,通常最好将其替换为对StringBuilder.append()或StringBuffer.append()的显式调用。
修正后:
为什么阿里推荐循环体内字符串连接使用 StringBuilder 的 append 方法