1. 程式人生 > >JAVA引數傳值

JAVA引數傳值

//新建一個類,命名為Calc
package com.zlm;

public class Calc {
//構造一個方法,方法名為add
void add(int x){    //定義了一個int型別的引數x
x += 1;         //表示x = x + 1
System.out.println("x=" +x);//輸出x的值
}
}
**********************************************************
**********************************************************
package com.zlm;

public class 
Main { public static void main(String[] args) { int a = 2; //新建一個int型別的變數a,給a賦值為2Calc c = new Calc();//新建一個Calc型別的變數c,給c賦值new Calc() c.add(a); /*因為addCalc類中的方法,所以要返回到Calc中, 並把a的值傳給x,執行add方法,輸出x */ System.out.println("a=" +a);//輸出a的值// } } 輸出結果:
自我分析:一開始一直在想:為什麼x的值和a不相等?為什麼a=2而不是a=3?
老師講解後,有了很清晰的認識,c.add(a)這一步只是a把它本身的值傳給了x.
x只在Calc類中執行運算,在add方法中執行x+=1之後,x的值變成了3,最後輸出x的值.
a只給x進行了傳值,它倆沒有其他的聯絡,所以a的值還是原來的2,沒有任何的變化。