哪个更快:(i == 0) 或 (i < 1)

Which is faster: (i == 0) or (i < 1)

最近听说:

//This:
val1 * 0.5;
//Is faster than this:
val1 / 2;

所以我想知道是否还有其他类似的东西,所以我问:

var val1:uint = 0;
//Is This:
if (val1 == 0)
//faster than this?:
if (val1 < 1) 

为什么?无论你做什么,编译器都会在你当前编译的任何平台上对其进行优化。

如果你需要检查它是否为 0,请使用 (i == 0),如果你想知道它是否小于零,请改用那个。写下您会大声朗读的内容。

像这样的小东西不会让任何事情变得更快,你应该担心可读性和简洁的设计,而不是哪个小操作更快。

即使它没有进行任何逻辑更改,您的平台也有可能在一个 CPU 周期内执行。