Java中的方法調用參數傳遞有兩種方式:值傳遞和引用傳遞。值傳遞是將方法調用時傳遞的參數值賦值給新的變量,而引用傳遞是把實際參數的引用(內存地址)復制一份傳遞給方法參數。
// 在Java中定義一個方法 public void swap(int a, int b) { int temp = a; a = b; b = temp; } // 在主方法中調用swap方法,并打印結果 int a = 10; int b = 20; swap(a, b); System.out.println("a = " + a + ", b = " + b); // 輸出結果:a = 10, b = 20
在上面的代碼中,交換方法swap中的參數是按值傳遞的,因此當我們執行swap(a, b)時并不會改變a和b的值。
// 在Java中定義一個方法 public void change(int[] arr) { arr[0] = 100; } // 在主方法中調用change方法,并打印結果 int[] arr = new int[]{1, 2, 3, 4, 5}; change(arr); System.out.println(Arrays.toString(arr)); // 輸出結果:[100, 2, 3, 4, 5]
在上面的代碼中,修改方法change中的參數是按引用傳遞的,因此當我們執行change(arr)時會改變arr的值,即將第一個元素改為100。