Is Math.max(a,b) or (a>b)?a:b faster in Java?

后端 未结 7 1574
深忆病人
深忆病人 2020-12-03 20:59

Which one is faster in Java and why?

  1. Math.max(a,b)
  2. (a>b)?a:b

(This was asked in an interview.)

7条回答
  •  孤城傲影
    2020-12-03 21:17

    Not the same. When you are writing (a > b) ? a : b you don't have an extra function call, so it will be faster. It's the equivalent of inlining in C++. But this will not make any difference in real life. Math.max(a,b) is more readable so I would use it.

提交回复
热议问题