作者phechen ()
看板java
標題[問題] 請教傳值呼叫(call by value)的問題
時間Tue Feb 21 19:30:09 2006
小弟在書上看到Call by value的一個範例,有兩個問題想請教板友們...
先附上程式碼:
1 class
2 {
3 public static void main(String args[])
4 {
5 int x=10;
6 System.out.println("呼叫process方法前,x的值為" +x);
7 process(x);
8 System.out.println("呼叫process方法後,x的值為" +x);
9 }
10 static void process(int y)
11 {
12 y+=10;
13 System.out.println("process這方法中的 y =" +y);
14 }
15 }
執行結果:
呼叫process方法前,x的值為 10
process這方法中的 y =20
呼叫process方法後,x的值為 10
小弟的問題:
為何排序不是"process這方法中的 y =20"在最後面,
而是"呼叫process方法後,x的值為 10"在最後面呢?
另外,第七行為process(x),第十行為process(int y),
一個是x,一個是y,為什麼x會傳給process(int y)呢?兩者有什麼關係嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.66.127.251
※ 編輯: phechen 來自: 210.85.12.21 (02/21 20:24)