java - 在 Java 8 中,用于连接的 '+' 运算符被 new StringBuilder() 取代

标签 java string optimization stringbuilder

<分区>

在 Java 8 中,我写了一些示例代码。

String s1 = "Hello";  
String s2 = "world";  
String s3 = s1 + s2;  

在反编译 .class 文件后,我发现了第三条语句

 String s3 = s1 + s2;  

替换为

 String s3 = new StringBuilder(s1).append(s2).toString();

这是否意味着不再需要使用显式 StringBuilder 进行优化,只需使用 '+' 运算符而不是?

最佳答案

是的。实际上,这种优化已经在 J​​ava 6 中完成。有关详细信息,请参阅 Bruce Eckel 的“Thinking in Java”第 4 版 pp.356-359

关于java - 在 Java 8 中,用于连接的 '+' 运算符被 new StringBuilder() 取代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37810526/

相关文章:

java - 如何制作 Eclipse 插件来运行独立应用程序

regex - 如何从 MATLAB 中的字符串创建首字母缩略词?

swift - 优化向长 Swift 字符串添加破折号

python - 是否可以在 GEKKO 动态优化中定义变量的开始和结束时间?

java - 高效的SQl查询获得用户喜爱

java - 如何在不中断 log4j2 的情况下在 Json 对象中记录异常堆栈跟踪

java - 类型不匹配无法从元素类型对象转换为字符串

Python:比较两个字符串并返回它们共有的最长段

optimization - 如何通知优化器 NonZeroU32::get 永远不会返回零?

Java 图像不显示?