Java, boolean 值的二维数组&&比较

标签 java

这又回到了 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/

相关文章:

java - 具有不带大括号的多个语句的 Lambda 表达式的行为

java - 具有 2 个用户角色的 tomcat 上的 j_security_check

java - 如何通过 REST API java 在 Azure DevOps 中添加测试结果?

java - Java 是否提供了迭代多个单独对象的方法?

java - Android Studio : Try-catch exception crashes application

java - RandomAccessFile.read() 返回的值大于读取到字符串中的字符数

java - 如何以编程方式在 Java 中设置时区?

java - Android 抽屉导航/DrawerLayout...切换无法正常工作

java - 坚持后 JPA 实体 CreateTimestamp 为空

java - 如何在 Java 中将对象数组作为参数传递