• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:JAVA初心者です 教えてください)

Java初心者の疑問点:条件式とブロックの書き方について

このQ&Aのポイント
  • Java初心者が条件式とブロックの書き方について疑問を持っています。具体的には、「else if((time >= 11) && (time <= 17)){」の部分でつまづいています。
  • 質問者は「time >= 11」がfalseであるため、else if文が実行されないのではないかと疑問を持っています。
  • 質問者は「(time <= 11) && (time <= 17)」と書くべきではないかと考えています。

質問者が選んだベストアンサー

  • ベストアンサー
noname#224808
noname#224808
回答No.2

>time >= 11ではtime(8)が11以上という演算子になってfalseになり、else if文は実行され>ないのではないでしょうか? おっしゃる通り8時に”こんにちは”はおかしいのでelse if文が実行されないのは至極全うではないでしょうか。

ikrz
質問者

お礼

>>おっしゃる通り8時に”こんにちは”はおかしいのでelse if文が実行されないのは至極全うではないでしょうか。 確かに、いわれてみればそのとおりでございますね ありがとうございます

その他の回答 (1)

  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.1

time = 8 では }else if((time >= 11) && (time <= 17)){ ・・・・ } の部分は実行されませんね。 > (time <= 11) && (time <= 17)と書くのではないのでしょうか? これだと、その前の if((time >= 4) && (time <= 10)){ ・・・・ } の部分と対象時間がダブるので意味がありません。 time = 8 の時は『おはようございます』の方が出力されます。

ikrz
質問者

お礼

>>これだと、その前の if((time >= 4) && (time <= 10)){ ・・・・ } の部分と対象時間がダブるので意味がありません。 なるほど、そうですね。おっしゃるとおりでございます。 else ifのTimeのままじゃ、こんにちはがこの演算子のままでは実行されないじゃないかという考えで支配されていてつまづいてたんですが、 Time(8)が時間で変動すればtureに変わり実行されるようになるのですね。 ありがとうございました

ikrz
質問者

補足

訂正 ture>True

関連するQ&A