// 5つの配列に友達の名前(英語)を代入しておく。 // そして標準入力からアルファベットを1つ入力し、そのアルファベットで始まる // 友達の名前を出力するプログラム(友達が存在しなければ、「none」と出力する) // ちょっとしたポイント: // 求める友達が存在するかどうかを表す「exist」という変数を用意しておく。 // exist にははじめから false を代入しておく。 // 求める友達が見つかった時点で exist に true を代入する。 // そうすると、for 文が終わったとき、exist の値が false であれば、 // 求める友達が存在せず、true であれば、友達が存在したことがわかる。 import java.io.*; import java.lang.*; public class Friend { public static void main(String[] args) { try { /* 何らかの原因で標準入力ができなかった場合に、エラーを検知する */ // friend: 友達の名前 String[] friend = new String[5]; // input: 入力された文字(1 文字でも文字列として扱う) String input; int i; // exist: 入力された文字で始まる名前の友達が存在するかどうか boolean exist = false; // 友達の名前を代入 friend[0] = "kyoko"; friend[1] = "hanako"; friend[2] = "toko"; friend[3] = "ayako"; friend[4] = "hiroko"; System.out.println("探したい友達の名前のアルファベットの頭文字1文字を入力してください。"); BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); /* 標準入力の準備 */ input = reader.readLine(); for (i = 0; i < 5; i++) { /* 5 つの友達の名前を 1 つ 1 つ調べる */ if (friend[i].indexOf(input) == 0) { // i 番目の友達の名前が、入力された文字で始まっている場合 exist = true; /* exist に true を入力することで、「存在する」と主張 */ System.out.println("求める友達の名前は: " + friend[i]); } } if (exist == false) { // 入力された文字で始まる友達が存在しなかった場合 System.out.println("求める友達の名前は: none"); } } catch (IOException e) { /* try { 〜 } でエラーが検知されたときの処理 */ } } }