質問: 2) { System.out.println("あなたの性別は女性ですね。"); } else { System.out.println("1か2を入力してください。"); } } } ``` ここにより詳細な情報を記載してください。
回答: 数値の入力には Scanner を使うと便利ですよ。 メッセージのデータを配列で持つとこうなります。 ``` import java.util.Scanner; class Test { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String msg[][] = { { "あなたの性別は男性ですね。\n" + "昨日はランニングをしましたか?\n" + "1:しました。2:していません。", "ランニングをしたんですね", "ランニングをしていないんですね", "1か2を入力してください。" }, { "あなたの性別は女性ですね。\n" + "昨日はショッピングに行きましたか?\n" + "1:行きました。2:行きませんでした。", "ショッピングに行ったんですね", "ショッピングに行ってないんですね", "1か2を入力してください。" } }; System.out.println("あなたの性別はなんですか?\n1:男性、2:女性"); int sex = sc.nextInt(); if (sex != 1 && sex != 2) System.out.println("1か2を入力してください。"); else { System.out.println(msg[--sex][0]); int n = sc.nextInt(); if (n == 1 || n == 2) System.out.println(msg[sex][n]); else System.out.println(msg[sex][3]); } } } ``` **追記** ちょっと修正。 ``` if (sex != 1 && sex != 2) System.out.println(msg[0][3]); else { System.out.println(msg[--sex][0]); int n = sc.nextInt(); if (n != 1 && n != 2) n = 3; System.out.println(msg[sex][n]); } ```