![]() |
1
4
关键是:没有 懒惰的 意思是,在C语言中,你可能会看到如下内容:
(参见一些真实世界的例子 here 其思想是定义一个宏,向其传递一个复杂的字符串。但是编译器确保代码只在字符串实际存在的情况下生成。
在Java中,我们根本无法表达这一点。你总是要走
因此:这是 一点也不 关于字符串concats的成本。是关于 只有 并回答实际问题:最后,当代码被足够频繁地调用时,JIT无论如何都会把它变成经过仔细优化的机器代码。因此:实际的字符串concat是 不 这个问题。 换言之:您不会从以下方面考虑Java的“性能” 源代码 |
![]() |
2
0
这是底线。从Java开始,不要担心诸如字符串连接之类的小性能问题。对于大型应用程序服务器来说,这可能是一个小问题,因为在大型应用程序服务器中,会执行大量字符串连接,但不会使用结果。一个例子是日志记录,其中的日志级别导致忽略事件。此外,Java使用StringBuilder连接一系列由“+”运算符分隔的文本,这是一种性能合理的方法。 |
![]() |
Megadardery · 如何测试两种算法并确定哪种算法更快? 7 年前 |
![]() |
em1031 · 查找上一期价值的最快方法? 7 年前 |
![]() |
Dusol · 使用多核时是否可能超出带宽限制? 7 年前 |
![]() |
ezekiel · C与Python/numpy的数学表现较差 7 年前 |
![]() |
Chris · OutOfMemoryError:GC开销限制超过标准 7 年前 |
|
user8477039 · 在Ruby/Rails中处理大型数据集导入 7 年前 |