11

Cでは、ifステートメントを書くことができます

if (firstInt & 1)

booleanしかし、Javaで同じことをしようとすると、コンパイラは「互換性のない型」を教えてくれ、.の代わりにが必要だと言いますint。そのCコードをJavaで書く方法はありますか?

4

2 に答える 2

23

次のいずれかが機能するはずです。

if ((firstInt & 1) != 0)
if ((firstInt & 1) > 0)
if ((firstInt & 1) == 1)
于 2012-04-08T15:43:51.327 に答える
1

C では、整数式をブール式として暗黙的に使用できます (ただし、それは悪い考えだと私は主張します)。ゼロは false で、ゼロ以外の値はすべて true です。

Java では許可されていないため、比較演算子を使用して整数の結果を他の整数値または式と比較して、式を明示的にブール値にする必要があります。

于 2012-04-08T19:22:55.433 に答える