その他

Javaマスターへの道: ステップ8 – 配列の理解と活用

その他
この記事は約3分で読めます。

はじめに

株式会社インプルの奈良です。

前回は、条件分岐(真偽値(boolean)if文、else文、論理演算子、文字列の比較)についてまとめました。

今回は、配列(配列の宣言、初期化、アクセス方法、cloneメソッドについて解説します。

この記事は、Javaについて0から学んでいくため、プログラミング初学者の方の参考になれば幸いです。

配列(配列の宣言、初期化、アクセス方法、cloneメソッド)について

配列の宣言とは

配列は次のように宣言します。

int[] numbers; // int型の配列numbersを宣言

配列の変数宣言の書式は、データ型[] 変数名 もしくは、データ型 変数名[];です。

配列の初期化とは

配列を宣言するときに、同時に初期化(値を設定)することもできます。

int[] numbers = {1, 2, 3, 4, 5}; // int型のnumber配列に、1,2,3,4,5の要素を格納

また、配列を初期化する別の方法として、newキーワードがあります。

int[] numbers = new int[5];

上記は、int型の5つの要素を持つ配列を作成しています。各要素はデフォルトで0に設定されます。加えて、下記のように配列宣言時に配列の要素をあらかじめ決める方法もあります。

int[] numbers = new int[]{1,2,3,4,5};
奈良
奈良

基本的には、1番最初に解説した配列を宣言するときに、同時に初期化(値を設定)する方法を取ることが多いです。

配列要素へのアクセスについて

配列の各要素は、インデックス(添字)を使ってアクセスします。インデックスは0から始まります。以下のコードは、numbers配列の第一要素にアクセスします。

int[] numbers = {1, 2, 3, 4, 5}; 
System.out.println(numbers[0]);  // Outputs 1
ystem.out.println(numbers[2]);  // Outputs 3

※number[2]なら2ではなく、3が出力される。

cloneメソッドについて

cloneメソッドを使うと、配列の複製を作成することができます。

int[] numbers = {1, 2, 3, 4, 5}; 
int[] cloneNumbers = numbers.clone(); // ディープコピー

配列のコピーには、上記のようにcloneメソッドを使用したディープコピーのほかにシャローコピーというコピーも存在します。

2つの違いについてはこちらの記事を参考にしてみてください!

ディープコピーとシャローコピーの違い
「ディープコピー」と「シャローコピー」の違い シャローコピーとは シャローコピーとは浅い(shallow)コピーと呼ばれ、実体(データ)のコピーを行わないで、オブジェクトをコピーする方式です。要するに

さいごに

今回は、配列(配列の宣言、初期化、アクセス方法、cloneメソッドについて解説しました。

次回は、ループ処理について解説します。