这是什么意思"if(<an integer>&2)"?

Cso*_*oki 0 c++ java int if-statement

这是什么意思"if(<an integer> & 2)"?我在这里看到它,但我把它写入java并且编译器不接受它.请帮助我!

zw3*_*324 5

这是因为Java不隐区分0false.

在C++中,0is false,so 1 & 2= 0,这是假的.

虽然在Java中,1 & 2仍然是0,但0不能被视为false,因此编译器告诉你存在类型不匹配.


Pet*_*hev 5

一定是if ((integer & 2) != 0).

Java不承认正整数的true0falseC++.

否则,它测试是否设置了右边的第二个位,即它是1.