1. 程式人生 > >for-each語句不能改變arrs陣列,需用for迴圈

for-each語句不能改變arrs陣列,需用for迴圈

/**  * 資料加密傳輸  */ import java.util.Scanner; public class secretPass {     public static void main(String[] args) {         Scanner input = new Scanner(System.in);         int num = 0;         while (true) {             System.out.println("請輸入四位正整數:");             num = input.nextInt();             if (num > 999 && num < 10000) {                 System.out.println("輸入資料有效!");                 break;             } else {                 System.out.println("輸入資料無效,請重新輸入!");             }         }         System.out.println("加密前的資料是:" + num);         int[] arrs = new int[4];         arrs[0] = num % 10; // 取個位         arrs[1] = num / 10 % 10; // 取十位         arrs[2] = num / 100 % 10; // 取百位         arrs[3] = num / 1000; // 取千位         // 不能使用for-each語句改變arrs陣列的元素        // for-each只能用來遍歷列印陣列元素
        /*         for (int n : arrs) {              n = (n + 5) % 10;              System.out.print(n+" ");          }         */              for (int i = 0; i < arrs.length; i++) {             arrs[i] = (arrs[i] + 5) % 10;         }             /*         for (int i = 0; i < arrs.length; i++) {             System.out.print(arrs[i] + " ");         }         */
        int tmp1 = arrs[0];         int tmp2 = arrs[1];         int tmp3 = arrs[2];         int tmp4 = arrs[3];         arrs[0] = tmp4;         arrs[1] = tmp3;         arrs[2] = tmp2;         arrs[3] = tmp1;         System.out.print("加密後的資料是:");         for (int i : arrs) {             System.out.print(i);         }     } }