您好,登錄后才能下訂單哦!
小編給大家分享一下Java的call by value和call by reference是什么意思,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
題目如下:
public class TestJavaCallBy { // 測試值傳遞 public static void testCallByValue(int value) { value *= 10; } // 測試引用傳遞 public static void testCallByReference(StringBuilder sb) { sb.append(" - " + ZonedDateTime.now()); } public static void main(String[] args) { // 測試值變量 int param = 1; // 測試引用對象 StringBuilder sb = new StringBuilder("666"); // 測試 System.out.println(param); testCallByValue(param); System.out.println(param); System.out.println(sb.toString()); testCallByReference(sb); System.out.println(sb.toString()); } } 控制臺輸出結(jié)果 1 // 結(jié)果仍為1,因?yàn)閰?shù)傳遞的是實(shí)參的一份拷貝,對實(shí)參不造成影響 1 666 // 傳遞的是引用的拷貝,新舊兩個引用指向同一個對象(地址),因此append操作是作用在該對象上 666 - 2019-03-16T01:25:57.933038500+08:00[Asia/Shanghai]
看完了這篇文章,相信你對Java的call by value和call by reference是什么意思有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。