public class Arrays { static void prt(String str, int[] a) { int i=0; System.out.print(str +"{"); if (i<a.length) System.out.print(a[i++]); while (i<a.length) { System.out.print("," + a[i++]); } System.out.println("}"); } public static void main(String[] args) { int[] a1 = { 1, 2, 3}; int[] a2; int[] a3 = {}; prt("a1:",a1); // prt("a2:",a2); コンパイルエラー a2 = a1; prt("a2:",a2); for(int i = 0; i < a2.length; i++) a2[i]++; prt("a2:",a2); prt("a3:",a3); a3 = a1; prt("a3:",a3); } }実行結果は次のようになる.
% java Arrays a1:{1,2,3} a2:{1,2,3} a2:{2,3,4} a3:{} a3:{2,3,4}プログラム中で,
a2 = a1;により,配列への参照が変数 a2 に代入され, 配列a2とa1とは同一の配列となる.