Java中if/etc与Switch语句的相对性能差异是什么?考虑到我的web应用程序的性能,我想知道“if/etc”或Switch语句中哪一个在性能方面更好?
3 回答
慕村225694
TA贡献1880条经验 获得超4个赞
我完全同意这样的观点,即过早优化是应该避免的。
但确实,JavaVM有特殊的字节码,可以用于Switch()的字节码。
因此,如果代码是性能CPU图的一部分,则可能会提高一些性能。
慕姐8265434
TA贡献1813条经验 获得超2个赞
switch (<condition>) { case c_0: ... case c_1: ... ... case c_n: ... default: ...}
c_0
, c_1
c_N
<condition>
如果这个集合是“稠密的”-也就是说,(max(C) i)+1-min(C) i)/n>α,其中0<k<α<1,其中 k
大于某些经验值,可以生成跳转表,这是高效的。 如果这个集合不是很密集,但是n>=β,那么二进制搜索树可以在O(2*log(N)中找到目标,这仍然是有效的。
<condition>
添加回答
举报
0/150
提交
取消