在Java 8'+'运算符用于concatinating替换为新的StringBuilder()[重复](In Java 8 '+' operator for concatinating replaced by new StringBuilder() [duplicate])
java
这个问题在这里已有答案:
StringBuilder vs Java中的字符串连接在Java 18答案 中的toString()在Java 8中,我编写了一些示例代码。
String s1 = "Hello"; String s2 = "world"; String s3 = s1 + s2;反编译.class文件后,我发现第3个语句
String s3 = s1 + s2;取而代之
String s3 = new StringBuilder(s1).append(s2).toString();这是否意味着不再需要使用显式StringBuilder进行优化而只需使用'+'运算符而不是?
This question already has an answer here:
StringBuilder vs String concatenation in toString() in Java 18 answersIn Java 8, I wrote some sample code.
String s1 = "Hello"; String s2 = "world"; String s3 = s1 + s2;After decompiling .class file I found that 3rd statement
String s3 = s1 + s2;replaced by
String s3 = new StringBuilder(s1).append(s2).toString();Does it mean that There is no longer need to use explicit StringBuilder for Optimization and just use '+' operator instead of?
最满意答案
是。 实际上,这个优化已经在Java 6中完成了。详情请参阅Bruce Eckel的“Thinking in Java”第4版pp.356-359
Yes. Actually, this optimization had been done in Java 6. See Bruce Eckel's "Thinking in Java" 4th edition pp.356-359 for details
更多推荐
发布评论