Tbpgr Blog

Ruby プログラマ tbpgr(てぃーびー) のブログ

書籍 パーフェクトJava | 配列

パンくず

書籍 パーフェクトJava
配列

概要

Javaの配列について

Javaの配列

Java配列はオブジェクトです。

初期化時に{}を使用した場合、最後のカンマを残しても問題ありません。
これは、Javaのコードを生成する場合に楽をできる要素なのです。

例えば

System.out.print("String[] strings = {");
for (String param : params) {
  System.out.print("\"" + param + "\",");
}
System.out.println("};");

のような処理で最後のカンマを消さずに済みます。

・配列のコピー
Arrays.copyOfで配列のコピーが可能です。
Javaの配列のコピーはシャローコピー(Shallow Copy)です。
配列自体は新たにコピーされますが、中身の要素が示す値はコピー前と同じ要素を参照しています。
個別の要素も全てコピーして別の参照にする(=ディープコピー Deep Copy)場合は独自実装する必要があります。

※Shallow=浅い