21
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【ポケモン×Java】知識編 配列#2 〜配列を完全攻略! -for文と拡張forと配列-~

21
Posted at

はじめに

前回の記事(配列#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未満の仲間だけ回復」みたいに、条件を入れてチェックできるよ。


あとがき

ここまで読んでくれて、本当にありがとうございました。

「プログラミングって難しい…」って思ってた人も、
「ちょっと楽しいかも…!」って思ってもらえたらうれしいな。

次の投稿も、よろしくおねがいします。

💬 コメント・フィードバック歓迎!

「この章わかりやすかった!」
「これ表現まちがってない?」
「次は○○をやってほしい!」などなど、
お気軽にコメントで教えてくださいね!


21
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?