民國111年 地方四等 資訊處理 計算機概要
第29題
若執行以下的Java 程式碼,則螢幕上輸出的數字依序為何?public class ArrayReference {public static void mai…
題目
若執行以下的Java 程式碼,則螢幕上輸出的數字依序為何?public class ArrayReference {public static void main(String[] arg){int[] array1 = {1, 2, 3, 4};int[] array2 = {5, 6, 7, 8};int[] array3 = {9, 10, 11, 12};array3 = array1;array2 = array3;for(int counter=0; counter<array1.length; counter++){array1[counter]=array1[counter]+array2[counter]+array3[counter];}for(int counter=0; counter<array2.length; counter++){System.out.println(array2[counter]);}}} A. 1,2,3,4 B. 3,6,9,12 C. 5,6,7,8 D. 15,18,21,24
官方答案
- 答案:B. 3,6,9,12
解析
Java 的陣列變數存放的是參考(reference)。array3=array1 之後,array3 與 array1 指向同一個 {1,2,3,4};接著 array2=array3,array2 也指向同一個陣列,因此三個變數其實共用同一份資料。迴圈中每次運算 array1[i]=array1[i]+array2[i]+array3[i],由於三者是同一元素,等於把每個元素乘 3:1→3、2→6、3→9、4→12。最後印出 array2 的內容即為 3、6、9、12。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。
官方資料
答案以考選部公告之測驗式試題標準答案 PDF 為準。