使用簡單數組
(1)創建一個名為ArrayExer2的類,在main()方法中聲明array1和array2兩個變量,他們是int[]類型的數組。
(2)使用大括號{},把array1初始化為8個素數:2,3,5,7,11,13,17,19。
(3)顯示array1的內容。
(4)賦值array2變量等於array1,修改array2中的偶索引元素,使其等於索引值(如array[0]=0,array[2]=2)。打印出array1。
1 public class ArrayExer2 { 2 public static void main(String[] args) { //alt + / 3 int[] array1,array2; 4 5 array1 = new int[]{2,3,5,7,11,13,17,19}; 6 7 //顯示array1的內容 8 for(int i = 0;i < array1.length;i++){ 9 System.out.print(array1[i] + "\t"); 10 } 11 12 //賦值array2變量等於array1 13 //不能稱作數組的復制。 14 array2 = array1; 15 16 //修改array2中的偶索引元素,使其等於索引值(如array[0]=0,array[2]=2) 17 for(int i = 0;i < array2.length;i++){ 18 if(i % 2 == 0){ 19 array2[i] = i; 20 } 21 22 } 23 System.out.println(); 24 //打印出array1 25 for(int i = 0;i < array1.length;i++){ 26 System.out.print(array1[i] + "\t"); 27 } 28 } 29 }
思考:array1和array2是什么關系?
array1和array2地址值相同,都指向了堆空間的唯一的一個數組實體。
拓展:修改題目,實現array2對array1數組的復制
1 /* 2 * 使用簡單數組 3 * 拓展:修改題目,實現array2對array1數組的復制 4 */ 5 public class ArrayExer3 { 6 public static void main(String[] args) { //alt + / 7 int[] array1,array2; 8 9 array1 = new int[]{2,3,5,7,11,13,17,19}; 10 11 //顯示array1的內容 12 for(int i = 0;i < array1.length;i++){ 13 System.out.print(array1[i] + "\t"); 14 } 15 16 //數組的復制: 17 array2 = new int[array1.length]; 18 for(int i = 0;i < array2.length;i++){ 19 array2[i] = array1[i]; 20 } 21 22 23 //修改array2中的偶索引元素,使其等於索引值(如array[0]=0,array[2]=2) 24 for(int i = 0;i < array2.length;i++){ 25 if(i % 2 == 0){ 26 array2[i] = i; 27 } 28 29 } 30 System.out.println(); 31 //打印出array1 32 for(int i = 0;i < array1.length;i++){ 33 System.out.print(array1[i] + "\t"); 34 } 35 } 36 }