![]() |
1
6
虽然我无法想象这个用例,但您可以在任何地方使用三元运算符,而不是调用函数:
|
![]() |
2
2
引用代码花费大量时间的最可能原因是分支预测失误。任何时候,处理器必须处理一个条件分支,包括在三元运算符中,它必须猜测是否将执行该分支。如果它弄错了,它必须扔掉计算和管道内容,这可能会花费很多周期。 考虑将数据存储为字节而不是布尔值。转换将是一个简单的整数到双精度的转换,没有分支。 |
![]() |
3
1
依我看,你不太可能通过微观优化来提高它的性能。但您可以尝试:
您似乎已经进行了一些度量,这是您决定这部分代码需要优化的基础。 我建议您仔细研究您的基准测试方法。确保您的结果没有被JVM预热或GC的影响所扭曲 1. 。 您发表了评论:
关于优化的标准建议是把精力花在实际需要的地方。在这种情况下:
1-当有人引用测量时间仅为几秒钟的数字时,总是存在这样的风险,即这些数字代表一次性测量,而不是预热JVM中多次重复的平均值。 |
![]() |
Justin · 如何在Java中以全精度格式化double? 7 年前 |
![]() |
Pernoctador · 两个给定数字之间的双精度密度 7 年前 |
![]() |
INs · MySQL保存浮点错误 7 年前 |
|
Philip.W · 在C中格式化类似xxxxE+xx的双精度 7 年前 |