はじめに
前回の記事(配列#1 基礎編)では、配列を「データを並べる棚」として紹介したよ。
でも、棚に並べただけじゃ使いこなせない。大事なのは、順番に取り出して使うこと!
そこで今回は「ループ」と「配列」を組み合わせる練習をしていこう。
これができれば、点数の合計や最大値を求める処理もぐっと簡単になるよ。
🎓 通常のfor文
配列を扱う基本は for 文。番号(インデックス)を順に動かしながら使うよ。
int[] scores = {55, 80, 100, 60, 70};
for (int i = 0; i < scores.length; i++) {
System.out.println(i + "番目: " + scores[i]);
}
-
i = 0からスタート -
i < scores.lengthの間くり返す -
i++で1つずつ進む
コツ:配列とfor文はセットで考えると覚えやすいよ!
🎓 拡張for文(for-each)
「番号はいらない、値だけ取り出したい」ってときは拡張for文。
int[] scores = {55, 80, 100, 60, 70};
for (int score : scores) {
System.out.println(score);
}
シンプルに「配列の中身をひとつずつ取り出す」イメージ。
便利だけど「何番目か」が分からないから注意!
🎓 よくある処理パターン
合計を出す
int sum = 0;
for (int v : scores) {
sum = sum + v;
}
System.out.println("合計: " + sum);
最大値を探す
int max = Integer.MIN_VALUE;
for (int v : scores) {
if (v > max) {
max = v;
}
}
System.out.println("最大値: " + max);
平均を計算
int sum = 0;
for (int v : scores) {
sum = sum + v;
}
double avg = (double) sum / scores.length;
System.out.println("平均: " + avg);
こういう「お決まりの形」を、手に馴染ませるのが大事!
⚡ ピカチュウ例:HPを回復する
int[] hpList = {35, 12, 8, 50, 100};
for (int i = 0; i < hpList.length; i++) {
if (hpList[i] < 20) {
System.out.println("ピカチュウ" + i + "号は回復!");
}
}
「HPが20未満の仲間だけ回復」みたいに、条件を入れてチェックできるよ。
あとがき
ここまで読んでくれて、本当にありがとうございました。
「プログラミングって難しい…」って思ってた人も、
「ちょっと楽しいかも…!」って思ってもらえたらうれしいな。
次の投稿も、よろしくおねがいします。
💬 コメント・フィードバック歓迎!
「この章わかりやすかった!」
「これ表現まちがってない?」
「次は○○をやってほしい!」などなど、
お気軽にコメントで教えてくださいね!