因此,让我们考虑一下在循环中执行超过一百万次的以下语句。什么是java编译器的优化级别?
boolean validity = condition1 || condition2;
它是安全的假定这两个条件1和条件2有内部起来很复杂的计算。如此以来,这里有个OR运营商,我相信它会是明智的单独检查条件1第一,然后,如果有必要,条件2后像,
boolean validity = condition1;
if(!validity)
validity = condition2;
我应该手动执行这样的优化,还是java编译器会自动处理这些事情?
应该是非常简单的测试 – Paul
https://en.wikipedia.org/wiki/Short-circuit_evaluation –
或者如果condition1为true,操作将永远不会检查condition2。 –