我相信这可能是一个premature optimization
问题或其他问题。
对于以下两个代码片段,
public void doSomething1(final int a) {
final int b = a -1;
doSomethingElse(b);
doSomethingElse(b);
}
public void doSomething2(final int a) {
doSomethingElse(a - 1);
doSomethingElse(a - 1);
}
是否doSomething1
优于doSomething2
?是否doSomething2
使用两个不同int
的 s?
更新
也许我应该投反对票。但是我有一个实际的代码,它可以像这样读取和写入可变长度位(不是字节)。
final int unsignedLength = length - 1;
return (((readBoolean() ? ~0 : 0) << (length - 1))
| readUnsignedInt(length - 1));
我只是很好奇(length - 1)
与unsignedLength
.
谢谢。