【Java超入門コース】08.配列|変数を箱。配列をロッカーに例えて解説します【プログラミング初心者向け入門講座】

Java超入門コース

この記事の執筆・監修

キノコード
キノコード

テクノロジーアンドデザインカンパニー合同会社のCEO。
日本最大級のプログラミング教育のYouTubeチャンネル「キノコード」や、プログラミング学習サービス「キノクエスト」を運営。
著書「あなたの仕事が一瞬で片付くPythonによる自動化仕事術」や、雑誌「日経ソフトウエア」や「シェルスクリプトマガジン」への寄稿など実績多数。

はじめに

こんにちは。キノコードです。
「【5分レッスン】Java超入門コース#08 配列」について説明します。

配列とは?

配列とは、複数のデータを格納することができるデータ型です。
変数のレッスンで、変数のイメージは「箱」と説明しました。
配列は、例えるなら、変数は1つのデータしかいられない「箱」なのに対して、配列は複数のデータを入れることができる「ロッカー」です。
1列の配列のことを1次元配列といい、2列以上ある配列は多次元配列といいます。
配列の1つ1つの箱のことを要素といい、箱の数を要素数といいます。
配列のそれぞれの要素には、場所の情報が割り当てられています。
データが住んでいる住所のようなものです。
この住所には、インデックス番号というものが割り当てられています。
インデックス番号のことを「添え字」といったりもします。このレッスンでは、インデックス番号という名前で進めていきます。
一番左のインデックス番号は0から始まります。1から始まるわけではないので注意です。
そのため、1番最初のインデックス番号は「0」、2番目のインデックス番号は「1」、3番目は「2」、4番目は「3」といったように、インデックス番号は配列が格納されている「順番 - 1」となっています。

配列の宣言

それでは、配列の作り方をみていきましょう。
配列の作り方はいくつかあるのですが、2つ紹介します。
配列の宣言と代入を別々にやる方法と、それらを同時にやる方法です。
まず、配列の宣言と代入を別々にやる方法をみていきます。
書き方のきまりは次のとおりです。
データ型[] 配列変数;
配列変数 = データ型[要素数];
配列に格納するデータ型を書き、角括弧、そのあとに配列を扱う変数名を書きます。
配列を扱う変数のことを配列変数といい、その名前のことを配列変数名といいます。
次に行に、配列変数名をもう1度書いて、イコール。そして、newと書いて、データ型をもう1度書いて角括弧。角括弧の中に要素数を書きます。
以上の書き方で、配列を作ることができます。
これだけではわかりにくいと思うので、ソースコードを見ていきましょう。

class Lesson08_01 {
  public static void main(String[] args) {
    String [] arr;
    arr = new String[3];
    arr[0] = "sato";
    arr[1] = "suzuki";
    arr[2] = "takahashi";
    System.out.println(arr[0]);
    System.out.println(arr[1]);
    System.out.println(arr[2]);
  }
}

配列の要素の変更方法

このコードは、配列という英単語のarrayの前三文字をとったarrという配列変数に、’sato’,'suzuki','takahashi'という3つのデータを代入する配列を作るものです。
コードの意味を説明していきます。
最初に、データ型のあとに各括弧。配列変数名を記述します。
次に行に、arrという配列変数名のあとにイコール。newと書いてデータ型。各括弧の中に要素数です。
次に、それぞれの要素にデータをいれていきます。
配列変数名のあとにインデックス番号を書いて、データを代入していきます。
代入がされているか表示させてみましょう。
’sato’,'suzuki','takahashi'が表示されました。
配列の作り方の2つめです。配列の宣言と同時にデータを代入する方法です。
書き方のきまりは次のとおりです。
データ型[] 配列変数 = {データ1,データ2,….};
データ型を書いて角括弧。半角スペース。配列変数のあとにイコール。波括弧の中に配列に格納するデータを書きます。
実際に、ソースコードを見ていきましょう。

class Lesson08_02 {
  public static void main(String[] args) {
    String[] arr = { "sato", "suzuki", "takahashi" };
    System.out.println(arr[0]);
    System.out.println(arr[1]);
    System.out.println(arr[2]);
  }
}

順に説明します。
データ型のStringを書いて各括弧。そのあとに配列変数名のarr。イコールを書いて配列に代入したいデータを記述します。
 
表示させてみましょう。
’sato’,'suzuki','takahashi'が表示されました。
次に、配列のデータの変更をしてみましょう。

class Lesson08_02 {
  public static void main(String[] args) {
    String[] arr = { "sato", "suzuki", "takahashi" };
    arr[1] = "tanaka";
    System.out.println(arr[0]);
    System.out.println(arr[1]);
    System.out.println(arr[2]);
  }
}

インデックス番号を指定して代入をすればよいです。
配列の2番目の鈴木さんを田中さんにしてみます。
2番めなので角括弧に書くインデックス番号は1です。
これで、2番めの要素が"suzuki"ではなく、"tanaka"になっているはずです。
表示させてみましょう。
"tanaka"になっています。

多次元配列

class Lesson08_03 {
  public static void main(String[] args) {
    String [][] arr;
    arr = new String[2][2];
    arr[0][0] = "sato";
    arr[0][1] = "suzuki";
    arr[1][0] = "takahashi";
    arr[1][1] = "tanaka";
    System.out.println(arr[0][0]);
    System.out.println(arr[0][1]);
    System.out.println(arr[1][0]);
    System.out.println(arr[1][1]);
  }
}

これは2次元の配列のコードです。
2次元配列は、データ型の角括弧を2つ。
次の行に、データ型のあとに、要素数を書きます。
データの代入方法は、1次元配列と同じです。
代入されているか確認のため、表示させてみましょう。
"sato"、 "suzuki"、 "takahashi"、 "tanaka"が表示されました。
1次元配列と同じように、省略する形でもかけます。
2次元配列の場合は、波かっこの中の波かっこでデータを代入します。
表示させてみましょう。
"sato"、 "suzuki"、 "takahashi"、 "tanaka"が表示されました。

KinoCode チャンネル

YouTubeで毎日動画配信しています。
動画は3分間なので、
 ・通勤時間
 ・お昼休み
 ・お手すきのとき
 ・寝る前
など手軽に視聴できます。
 
ちょっとしたインプットにどうぞ!
 
▼チャンネル登録はこちらからどうぞ。