所以说例如我正在经历一个'if'块并且在这个块中,我将某个数字的值与常量进行比较.像这样会更贵吗?
if( foo.getOb().getVal() == CONST_0 )
{
....
}
....
if( foo.getOb().getVal() == _CONST_N )
{
....
}
else
....
Run Code Online (Sandbox Code Playgroud)
要么:
int x = foo.getOb().getVal();
if( x == CONST_0 )
{
....
}
....
if( x == _CONST_N )
{
....
}
else
....
Run Code Online (Sandbox Code Playgroud)
我知道这似乎是一个愚蠢的问题.我认为第二个实现是快速/更有效但我很好奇为什么.我一直在努力想起最后几分钟的原因,因为我对Java的了解有点缺乏,所以无法提出任何建议.
非常感谢任何答案!
在我看来你应该使用switch语句,在这种情况下,你不必担心它.
switch (foo.getOb().getVal()) {
case CONST_0:
....
break;
case CONST_N:
....
break;
default:
....
break;
}
Run Code Online (Sandbox Code Playgroud)