【Java】配列とは?宣言・代入・初期化など未経験者向けに解説

この記事では、テックドリームの講師がプログラミングについて、未経験の方にも分かりやすくご紹介いたします!
今回はJavaにおいての「配列」とは何か、書き方など具体例を踏まえながら解説します。

配列とは

1つの値を保管できる変数に対して、同じ型の複数の値を保管できる「配列」があります。

変数とは、文字や数値を保管できる箱です。変数については前回の記事をご参照ください。

関連記事

この記事では、テックドリームの講師がプログラミングについて、未経験の方にも分かりやすくご紹介いたします! 今回はJavaにおいての「変数」とは何か、書き方など具体例を踏まえながら解説します。 変数とは 変数とは、文字や数値を保管で[…]

例えば、値を10個保管したい時、変数だと10個の変数が必要となりますが、配列の場合は1個の配列にすべて保管できます。

配列の書き方は言語により異なりますが、この記事ではJavaの配列について解説します。

宣言

変数と同様に配列も「宣言」を行います。
配列は、以下のように型・配列名・配列の要素数を指定して宣言します。

配列の書き方

型[] 配列名 = new 型[配列の要素数];

//3つの数字を保管する配列を宣言
int[] intArray = new int[3];

 

//5つの文字を保管する配列を宣言
String[] strArray = new String[5];

代入

宣言した配列に値を入れるには、配列名とインデックスを指定して記述します。

インデックス

インデックスとは配列の要素の順番で、0から数えます。

代入の書き方

配列名[インデックス] = 代入する値;

//配列intArrayの1番目に「1」を代入
intArray[0] = 1;

初期化

配列の宣言と代入を同時に行うこともできます。

初期化の書き方

型[] 配列名 = {値1 , 値2 , 値3 ・・・};

//int型配列intArrayに「1」,「2」,「3」を代入
int[] intArray = {1, 2, 3};

値の取得

以下のような記述で配列に格納されている値を取得できます。

値の取得の書き方

配列名[インデックス]

//配列intArrayの2番目に格納されている値を取得して表示
System.out.print(intArray[1]);

ArrayIndexOutOfBoundsExceptionとは?

配列を使用する際に出力されがちなエラー(例外)として「ArrayIndexOutOfBoundsException」があります。

ArrayIndexOutOfBoundsExceptionとは、不正なインデックスを使って配列にアクセスされたときに発生するエラーです。
適切に配列の値を取得できなかった時に発生します。

下記のような取得を行うと発生します。

  • インデックスが負の数である。
  • 配列のサイズ以上の数を取得しようとしている。

エラー発生例

//int型配列intArrayに「1,2,3」を代入
int[] intArray = {1, 2, 3};

// 配列intArrayの3番目に格納されている値を取得
System.out.print(intArray[3]);

上記のサンプルコードでは、intArrayの3番目の値を取得しようとして3のインデックスを指定したため、エラーが発生します。

インデックスは0から始まるため、配列に存在しない4番目を指定していることになり、ArrayIndexOutOfBoundsExceptionが発生します。

配列を使ったサンプルコード

それでは、配列を使った簡単なサンプルコードを書いてみましょう。

サンプルコード

class Sample {
  public static void main(String[] args) {

    // int型配列の宣言
    int[] intArray = new int[3];

    // 配列「intArray」に数字を1つずつ代入
    intArray[0] = 1;
    intArray[1] = 2;
    intArray[2] = 3;

    // 配列「intArray」の3番目の値を表示
    System.out.println("intArrayの3番目に格納されている値 : " + intArray[2]);

    // String型配列「strArray」を文字列で初期化
    String[] strArray = {"あ", "い", "う", "え", "お"};

    // 配列「strArray」の5番目の値を表示
    System.out.println("strArrayの5番目に格納されている値 : " + strArray[4]);

    // 配列「strArray」の5番目の値を上書き
    strArray[4] = "か";

    // 配列「strArray」の5番目の値を表示
    System.out.println("strArrayの5番目に上書きされた値 : " + strArray[4]);
  }
}

実行結果

intArrayの3番目に格納されている値 : 3
strArrayの5番目に格納されている値 : お
strArrayの5番目に上書きされた値 : か

まとめ

配列は、同じ型の複数の値を保管するのに便利です。
インデックスが0から始まる点に注意して利用しましょう。
次は、分岐について紹介します。

関連記事

この記事では、テックドリームの講師がプログラミングについて、未経験の方にも分かりやすくご紹介いたします! 今回はJavaにおいての「分岐」とは何か、書き方など具体例を踏まえながら解説します。 分岐とは プログラミングにおいての分岐[…]

当スクールは無料のプログラミングスクールです。6ヶ月以上の学習期間が設けられており、未経験者でも安心してじっくり学べます。さらに、卒業後の就職、転職活動は不要です。運営企業のメディアファイブが正社員のITエンジニアとして採用します。ご興味のある方は、無料説明会・体験セミナーをぜひご予約ください。

まずは無料説明会・体験セミナー

テックドリームは無料のプログラミングスクールです。「プログラマってどういう仕事?」「自分にできるのかな?」という方も、まずは体験セミナーでプログラミングに触れてみませんか?テックドリームは未経験の方を丁寧にサポートする体制をご用意しています。不安なことや、入校までの疑問点なども気軽にご相談いただけます。

Webかんたん予約

専用の予約フォームより、およそ60秒で簡単にお申込みいただけます。

電話でのご予約

Webかんたん予約ができない場合や、ご質問がございましたら、お気軽にお電話ください。

0120-262-242
9:00~18:00(土日祝を除く)
最新情報をチェックしよう!
>未経験者向け無料プログラミングスクール

未経験者向け無料プログラミングスクール

アキバ・テックドリーム・アカデミー(テクドリ)は無料のプログラミングスクールです。
知識ゼロの未経験者でも6か月の研修を現役エンジニアの講師がサポートします。
スクール卒業後は、運営企業のメディアファイブに正社員登用!
秋葉原本校、福岡校にて無料体験セミナー実施中です。

CTR IMG