2017-01-22 10 views
0
私のコードが実行されます

が、isBalloonとisRedが両方とも該当する場合は、不適切なあなたifのを入れ子になってきたので、印刷し代わりに「赤い風船」ブール分岐ステートメントの

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; 
    } 
} 
+1

を望んでいたと思います。 2番目の 'if'ステートメントは最初の' if'ステートメントの内側にあるので、最初の 'if'ステートメントに失敗した後、' else'ステートメントにジャンプします。 – pushkin

答えて

0

の「バルーンではない」として、一度正しくインデントされていることは明らかです。

+0

あなたの言っていることを理解していますが、修正方法はわかりません。これは私の3週間目のことですが、私はちょっと失礼です。 –

1

ステートメントが不適切にネストされています。中括弧{}を追加すると、IDEによってフォーマットされ、間違いが明らかになります。

1

インデントがオフで、閉じ中括弧(およびelse)がありませんでした。あなたのprint(S)に基づいて、私はあなたがそれが原因で中括弧のだ

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

@BrianSnyder [真理値表](https://en.wikipedia.org/wiki/Truth_table)を書き出してください。あなたには明らかになると思います。 –