配列とfor文
for 文と配列は非常に相性の良い構文です。 for 文を利用することで配列の中身をコンピューターが参照してくれます。
条件を指定すると条件にあったものを探してきてくれます。
変数名はわかりやすくしているので実際にプログラムを記述する際は「list」や「num」「counter」など格好良い変数名に変更してください。
配列の中から数字を探す
このプログラムは配列
int [] kakutensu = { 71, 39, 48, 82, 77 }
の中に入っている各点数の中から「70点以上の人が何人いるかを数える」プログラムです。
配列の中身を for 文で参照していきます。
- public class TensuSentaku {
- public static void main(String[] args) {
- int [] kakutensu = { 71, 39, 48, 82, 77 };
- int sentaku = 0;
- for (int tensu : kakutensu) {
- if (tensu >= 70) {
- sentaku++;
- }
- }
- System.out.println(“70点以上は” + sentaku + “70点以上”);
- }
- }
このプログラムのポイントは
int sentaku = 0;
初期値を「0」にしておかないと既に1人いるところから人数を数え始めてしまいます。
配列の中から文字列を探す
このプログラムは配列に入っている山手線の駅名の中から「恵比寿」を探してスタートの「品川」から何番目かを数えるプログラムです。
文字列の比較には.equalsを使用します。
- public class Yamanotesen {
- public static void main(String[] args) {
- String [] teisya = { “品川”, “大崎”, “五反田”, “目黒”, “恵比寿”, “渋谷”, “原宿”, “代々木” };
- int num = 1;
- for (String eki : teisya) {
- if (eki.equals(“恵比寿”)) {
- break;
- }
- num++;
- }
- System.out.println(num);
- }
- }
このプログラムのポイントはまず
int num = 1;
で初期化されていることです。
品川駅を1番目として数えるので初期値を「1」とします。
つぎに if (eki.equals(“恵比寿”)) { の
.equals
です。
.equalsは文字列の比較をするときに使用します。
.equalsのあとに ”○○”を入れると同じ文字列を選択してくれます。
まとめ
配列の中身を for 文で参照するプログラムです。配列の中身全部を参照するので for 文の中身は拡張for文にしています。
文字列の比較には.equalsを使用します。