布尔分支语句

问题描述 投票:0回答:4

我的代码将运行,但如果 isBalloon 和 isRed 都为 true,它会打印“不是气球”而不是“红色气球”

import java.util.Scanner;

public class RedBalloon {
  public static void main (String [] args) {
    boolean isRed = false;
    boolean isBalloon = false;

    if ((isBalloon == true) && (isRed == false)){
      System.out.println("Balloon");

      if ((isBalloon == true) && (isRed == true)){
        System.out.println("Red balloon");
      }
    }
    else {
      System.out.println("Not a balloon");
    }
    return;
  }
}
java boolean
4个回答
1
投票

语句嵌套不正确。添加大括号

{}
,您的 IDE 将对其进行格式化,从而显示错误。


1
投票

您的缩进已关闭,并且您错过了右大括号(和

else
)。根据您的
print
,我认为您想要

if (isBalloon) {
    if (isRed) {
        System.out.println("Red balloon");
    } else {
        System.out.println("Balloon");
    }
} else {
    System.out.println("Not a balloon");
}

if (isBalloon && isRed) {
    System.out.println("Red balloon");
} else if (isBalloon) {
    System.out.println("Balloon");
} else {
    System.out.println("Not a balloon");
}

0
投票

因为您的

if
嵌套不正确,一旦正确缩进就清楚了。


0
投票

在第二个if语句中,您需要在if之前添加else。这对我有用

© www.soinside.com 2019 - 2024. All rights reserved.