Javaのif文について

もしもカレーだったら

生徒
生徒

教授?
お腹が空いてきたので来ました。

教授
教授

なるほど。
では、今回は、Javaのif文について説明しますよ?
早速ですが、次のようになります。

import java.util.Scanner;

public class Curry {
    public static void main(String[]args){
        System.out.println("カレーの確率を入力してください。");
        Scanner scanner = new Scanner(System.in);
        String n = scanner.nextLine();
        int m = Integer.parseInt(n);
        System.out.println("カレーの確率は"+ m +"%です。");
        if (m >= 50){
            System.out.println("福神漬けの用意をしましょう。");
        }else{
            System.out.println("半分諦めましょう。");
        }
        System.out.println("ごはんマダー?");
    }
}
生徒
生徒

コレでお腹いっぱいになれと?
なんだか、ヘンな胸やけがしてきました。

教授
教授

それは、空腹時の胃酸過多では?
もしも、お腹が空いていたら、ごはんマダー? と言いたくなるでしょう?

生徒
生徒

分かりましたよ!
さっさと、説明してください!

教授
教授

空腹こそ最高のスパイスですよ?
後で、カレーをごちそうしますね。

標準入力

生徒
生徒

突然ですが、私。
やる気が出てきました。
Scanner scanner = new Scanner(System.in);
ここは、どういう意味ですか?

教授
教授

それは、標準入力です。
プログラムの最初で、Scannerクラスを読み込んでいます。
import java.util.Scanner;
この部分です。

生徒
生徒

ああ、つまり、Scannerクラスをインスタンス化しているんですね?

教授
教授

そうなりますね。
String n = scanner.nextLine();
この部分で、変数nに入力された値を代入しています。

文字列を整数に変換する

教授
教授

しかし、標準入力では、値が文字列のままです。
後で困るので、数値に変換します。
int m = Integer.parseInt(n);

生徒
生徒

変数nに入っている文字列が、変数mに入るときに変換されるということですね?
ちなみに、後で困る、とは?

教授
教授

それは、続きを読んでいただけますか?

if文

教授
教授

ここからは、まとめていきますよ?

        if (m >= 50){
            System.out.println("福神漬けの用意をしましょう。");
        }else{
            System.out.println("半分諦めましょう。");
        }
生徒
生徒

コレがif文ですか?
elseっていうのもありますね。

教授
教授

ifの後には、条件を書きます。
(m >= 50)
「mが50以下」
という意味の条件です。
条件が満たされたときの処理がその後に続きます。

生徒
生徒

なるほど。
数値の比較だから、入力が文字列ではダメなのですね。
そして、カレーの確率が50%以上なら、福神漬けの用意をするということですね?

教授
教授

elseの後には、条件が満たされなかった時の処理を書きます。
したがって、カレーの確率が50%以下の時は、半分諦めましょうです。

生徒
生徒

諦めるのは悔しいですね。

カレーにしますか?

教授
教授

というわけで、プログラムを実行して、君の好きな数値を入力してください。

生徒
生徒

もちろん私は、「100」ですよ!!

教授
教授

100%カレーですね。
では、福神漬けの用意をしてください、です。

生徒
生徒

もしかして、教授の分もですか?

教授
教授

悲しくなるような質問はしないでください。

タイトルとURLをコピーしました