前回をまだ読んでない方はこちら
👉 【ポケモン×Java】Lv8:『先にHP0になるのはどっちだ?』〜if文〜
🎮 ピカチュウ、技を習得!
技を覚えるって、ちょっとワクワクしない?
ピカチュウがついに、4つの技を覚えたよ!
今回は "配列" を使って、複数の技をひとまとめにしてみよう!
💡 配列で技を持とう!
▷ 配列とは、「同じ種類のデータをまとめて扱える箱」のこと!
クラスボールにさっそく情報を追加だ!
複数の技を持っている場合、こんな風に書くよ!
Pikachu.java
class Pikachu {
String[] moves = {"10万ボルト", "でんこうせっか", "アイアンテール", "かみなり"};
int[] powers = {20, 10, 15, 30};
}
📒 トレーナーメモ
String[]
は「文字の配列」!int[]
は「数の配列」![]
の中の数字(インデックス)は 0 から始まるから注意!moves[0]
で「10万ボルト」、powers[0]
でその威力20
が取り出せる!
▷ 実際に技を見てみよう
BattleStage.java
package pokemon;
class BattleStage {
public static void main(String[] args) {
Pikachu pi = new Pikachu();
System.out.println(); // 改行
System.out.println("攻撃種類:"+pi.moves[1]);
System.out.println("攻撃力:"+pi.powers[1]);
}
}
▷ 出力結果
ピカチュウ がバトルに登場!
ピカ〜〜ッ!!
攻撃種類:でんこうせっか
攻撃力:10
✍️ 練習
- 技の名前を配列で持ってみよう!
- それぞれの威力も一緒に用意しよう!
- 実際に攻撃に何が設定されているか、確認してみよう。
Hint1 攻撃の種類を記載しよう(???を埋めて完成させよう)
Hitokage.java
class Hitokage {
String[] moves = { ??? };
int[] powers = { ??? };
}
Hint2攻撃の種類を確認しよう(???を埋めて完成させよう)
BattleStage.java
package pokemon;
class BattleStage {
public static void main(String[] args) {
??? ??? = new ???();
System.out.println("攻撃種類:"+???);
System.out.println("攻撃力:"+???);
}
}
次回:『選べ、キミの一撃!』
これで、4つの技でバトルができるね。
さあ、リベンジマッチだ!
次の投稿まで――
ピッピカチュウ!!
あとがき
ここまで読んでくれて、本当にありがとうございました。
「プログラミングって難しい…」って思ってた人も、
「ちょっと楽しいかも…!」って思ってもらえたらうれしいな。
次の投稿も、よろしくおねがいします。
💬 コメント・フィードバック歓迎!
「この章わかりやすかった!」
「これ表現まちがってない?」
「次は○○をやってほしい!」などなど、
お気軽にコメントで教えてくださいね!
✅ 回答例:
Hitokage.java
class Hitokage {
String name = "ヒトカゲ";
String type = "ほのお";
int hp = 100;
Hitokage() {
System.out.println(name + " がバトルに登場!");
cry();
}
void cry() {
System.out.println("カゲェ〜〜ッ!!");
}
void attack() {
System.out.println("かえんほうしゃ!");
}
void attack(Pikachu pi) {
System.out.println(name + " の かえんほうしゃ!");
pi.hp = pi.hp - 20;
System.out.println(pi.name + " に 20 のダメージ!");
System.out.println(pi.name + " の HP は " + pi.hp + " になった!");
}
// 攻撃の配列
String[] moves = {"かえんほうしゃ", "ひのこ", "なきごえ", "ひっかく"};
// ダメージの配列
int[] powers = {20, 10, 0, 15};
}
BattleStage.java
package pokemon;
class BattleStage {
public static void main(String[] args) {
Hitokage hi = new Hitokage();
System.out.println();//改行
System.out.println("攻撃種類:"+hi.moves[1]);
System.out.println("攻撃力:"+hi.powers[1]);
}
}
出力結果
ヒトカゲ がバトルに登場!
カゲェ〜〜ッ!!
攻撃種類:ひのこ
攻撃力:10