Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】【ポケモン×Java】Lv9:『新技!ピカチュウ、アイアンテール!』〜配列〜

2025年09月17日に「Qiita」が公開したITニュース「【ポケモン×Java】Lv9:『新技!ピカチュウ、アイアンテール!』〜配列〜」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

ポケモンを題材にしたJava学習記事。今回はプログラミング初心者が「配列」を使い、ピカチュウに複数の技を覚えさせる実装を通して、データをまとめて扱う基礎を学ぶ。

ITニュース解説

システムエンジニアを目指す上で、プログラミングの基礎知識は避けて通れない。その中でも特に重要で、様々な場面で活用される基本的な概念の一つに「配列」がある。この概念を理解することは、複雑なプログラムを作成する第一歩となる。

私たちがプログラムで何かを表現しようとするとき、多くの場合はデータを取り扱うことになる。例えば、ゲームのキャラクターが覚える複数の技を管理する場合を考えてみよう。もしピカチュウが4つの技を覚えているとしたら、「10まんボルト」「でんこうせっか」「かみなり」「アイアンテール」という4つのデータが必要になる。これらの技を一つ一つ個別の変数に格納することも可能だが、その場合、「技1」用の変数、「技2」用の変数、といった具合に、同じような性質を持つデータを別々の変数で管理することになり、コードが冗長になりがちである。技の数がもっと増えれば増えるほど、この管理方法は非効率的で、間違いも起きやすくなる。

そこで登場するのが配列である。配列とは、同じ型のデータを複数、一つのまとまりとして扱うための仕組みである。例えるなら、同じ種類のものを整理して入れておくための「引き出しの並び」のようなものだ。それぞれの引き出しには番号が振られており、その番号を指定することで特定の引き出しの中身を取り出したり、新しいものを入れたりできる。

Javaでの配列の基本的な使い方を見ていこう。まず、配列を使うためには、「こういう種類のデータをまとめて扱うよ」という宣言が必要になる。例えば、文字列(JavaではString型)の技名を格納する配列を宣言する場合、String[] techniques; のように記述する。ここで String[] は「文字列型の配列ですよ」という意味を示し、techniques はその配列に付けられた名前である。

次に、その配列が具体的にどれくらいの数のデータを格納できるのか、つまり引き出しの数を決める必要がある。これを配列の「初期化」と呼ぶ。例えば、ピカチュウが4つの技を覚えるのであれば、4つの引き出しを持つ配列を作る。techniques = new String[4]; と記述することで、4つの文字列を格納できる配列が作成される。new String[4] の部分で、実際にメモリ上に4つ分の文字列を格納する場所が確保されるのだ。宣言と初期化は、String[] techniques = new String[4]; のように一行でまとめて記述することも可能だ。

配列が準備できたら、いよいよ技の名前を格納していく。配列の各データにアクセスする際には、「インデックス」と呼ばれる番号を使う。このインデックスは非常に重要で、プログラミングの世界では0から始まるのが一般的である。つまり、最初の技はインデックス0、2番目の技はインデックス1、3番目の技はインデックス2、そして4番目の技はインデックス3で指定される。もし4つの要素を持つ配列であれば、インデックスは0から3までとなる。

具体的に技を格納するには、次のように記述する。 techniques[0] = "10まんボルト"; techniques[1] = "でんこうせっか"; techniques[2] = "かみなり"; techniques[3] = "アイアンテール"; このように、配列の名前と角括弧[]の中にインデックスを指定することで、特定の場所にデータを代入できる。

一度格納したデータを取り出す場合も、同じようにインデックスを使用する。例えば、ピカチュウが覚えている最初の技名を表示したいときは、System.out.println(techniques[0]); と書けば、「10まんボルト」という文字列が表示される。

配列を使うことの最大の利点は、複数のデータを効率的に管理できる点にある。技が20個に増えたとしても、新しい変数20個を用意する代わりに、new String[20]; と配列のサイズを変更し、インデックス0から19までを使ってデータを格納していけばよい。これにより、コードの見通しが良くなり、データの追加や変更が容易になる。また、配列は「ループ処理」という繰り返しを行うための構文と非常に相性が良い。例えば、配列に格納されている全ての技名を一つずつ表示したい場合、ループを使ってインデックスを0から配列のサイズ-1まで順番に増やしていくことで、少ないコード量で全ての技名を処理できる。

配列は、単に技の名前を管理するだけでなく、HPや攻撃力といった数値データ、あるいはプレイヤーの持ち物リスト、ゲームの世界のマップ情報など、多種多様なデータを効率的に扱うために不可欠な要素である。システムエンジニアとして様々なシステムを開発していく上で、この配列の概念は繰り返し登場し、その理解度がプログラムの品質や開発効率に大きく影響する。プログラミング学習の初期段階でしっかりと配列の概念を掴み、実際にコードを書いて触れてみることで、より深く理解できるだろう。これが、より複雑なデータ構造やアルゴリズムを学ぶための土台となるため、その重要性は計り知れない。

関連コンテンツ