我想知道Java虚拟机是否可以避免零乘法。谢谢
最佳答案
根据Java Language Spec ,“运算符的每个操作数(条件运算符 &&、|| 和 ? : 除外)似乎在执行操作本身的任何部分之前都经过了完全评估。”
因此,即使编译器或运行时可以检测到一个因素为零,但如果另一个因素可能产生副作用,它仍然必须评估另一个因素。
关于java - Java VM 是否跳过零乘法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9319710/