天天看點

Java中方法的參數改變情況

在Java中的參數運用中,如果是值類型,不會改變傳入的實參。

package TestPassByValue;

public class TestPassByValue {

public static void main(String[] args) {

   int num1 = 1;

   int num2 = 2;

   System.out.println("交換前 num1 的值為:" +

                       num1 + " ,num2 的值為:" + num2);

   swap(num1, num2);

   System.out.println("交換後 num1 的值為:" +

                      num1 + " ,num2 的值為:" + num2);

 }

 public static void swap(int n1, int n2) {

   System.out.println("\t進入 swap 方法");

   System.out.println("\t\t交換前 n1 的值為:" + n1

                        + ",n2 的值:" + n2);

   int temp = n1;

   n1 = n2;

   n2 = temp;

   System.out.println("\t\t交換後 n1 的值為 " + n1

                        + ",n2 的值:" + n2);

 }

}

結果:

交換前 num1 的值為:1 ,num2 的值為:2

進入 swap 方法

交換前 n1 的值為:1,n2 的值:2

交換後 n1 的值為 2,n2 的值:1

交換後 num1 的值為:1 ,num2 的值為:2

參考部落格:在java方法中改變傳遞的參數的值  連結:http://blog.csdn.net/sinat_22013331/article/details/51150358

代碼來自http://www.runoob.com/java/java-methods.html。