这又回到了 Java 101 的开头,但我这里有这段代码:
if ((d==3)&&(City.walls[x--][y])){
System.out.println ("Fourth Condition true");
System.out.println (City.walls[x--][y]);
return false;
}
即使 City.walls[x--][y]
) 为 false,并且 System.out.println
通过打印 false 来确认这一点,它仍然会无论如何,输入 if 语句。我在比较中做错了什么?提前致谢。
最佳答案
您正在使用 x--,这会更改 x 的值。首先它返回值,然后递减该值:
int x = 5;
System.out.println(x--); //outputs 5
System.out.println(x); //outputs 4
你可能想说x-1
关于Java, boolean 值的二维数组&&比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12811937/