交换条件"如果"声明

时间:2017-11-02 09:39:29

标签: java if-statement null

请考虑此代码段

{{1}}

if 条件下,我使用 date == null 我想知道是否有时间复杂度的减少,反之亦然,如果我选择写 null ==日期

PS-对于我的代码产生输出为 0 的条件,但是如果代码很复杂并且操作繁重怎么办?

1 个答案:

答案 0 :(得分:1)

date == nullnull == date几乎完全等效。

在您的具体情况下,它们在速度和观察行为方面没有区别。

你得到0,因为现代计算机非常快,执行计算的时间要少于毫秒。

PS:如果您真的想测量需要多长时间,就必须执行数十万次并将测量时间除以执行次数。

PPS:微型基准测试在Java中并不那么容易,因为您已经考虑了很多事情,比如JVM内部行为,编译器优化,GC,JIT等等。

修改 我错了,它们是完全等价的,因为这些代码将被编译为使用IFNONNULL指令。