2016-08-28 85 views
0

現在我正在爲AP計算機科學練習,對吧? (順便說一句,我自學,所以在我的學習差距可能很大,予以警告)變量在什麼時候變化?

這裏是一個問題將談論代碼:現在

public void changer(String x, int y) { 
     x = x + "peace"; 
     y = y * 2 ; 
    } 
    public void test() { 
     String s = "world"; 
     int n = 6; 
     changer(s,n); 
     /*End of method*/ 
    } 

,在點「結束方法「字符串應該等於」世界和平「和int n應該等於12.但在答案中,它說s仍然是」世界「,n仍然是6.

現在,顯然這意味着變量沒有改變,至少在那之前。有人可以解釋過去嗎?變量什麼時候會改變?我真的很困惑,爲什麼s不是「世界和平」,n不是12.

+4

1)Java是通過價值。 2)字符串是不可變的。 –

回答

0

Java不通過引用。這是通過價值。它只是在調用方法時複製變量。它就像方法中的局部變量一樣。方法結束時,變量中的那些值將會丟失。

相關問題