国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

java編程,函數內變量傳遞問題,為什么沒有都改變呢?

瀏覽:108日期:2024-01-20 15:32:09

問題描述

代碼如下:

public void test(BSTNode<T> z) {BSTNode<T> y;if (z.left != null){ y = z.parent; BSTNode<T> a; a = y.left; if (y != null){System.out.println('before a '+a);System.out.println('before y.left'+y.left);System.out.println('befere z.parent.left '+z.parent.left);y.left = null;//a = null;System.out.println('after a '+a);System.out.println('after y.left '+y.left);System.out.println('after z.parent.left '+z.parent.left); }} }

打印結果如下:before a threadSleep.BSTree$BSTNode@15db9742before y.leftthreadSleep.BSTree$BSTNode@15db9742befere z.parent.left threadSleep.BSTree$BSTNode@15db9742after a threadSleep.BSTree$BSTNode@15db9742after y.left nullafter z.parent.left null

請問 “after a ”為什么不是null?

或者將代碼:

y.left = null;

//a = null;

改為

//y.left = null;

a = null;

結果為:

before a threadSleep.BSTree$BSTNode@15db9742

before y.leftthreadSleep.BSTree$BSTNode@15db9742

befere z.parent.left threadSleep.BSTree$BSTNode@15db9742

after a threadSleep.BSTree$BSTNode@15db9742

after y.left null

after z.parent.left null

運行環境:

jdk1.8

問題解答

回答1:

你的結果兩次肯定不一樣。其實就和下面這種是一樣的。

int x = 10;int y = x;y = 0;x ?回答2:

Java中所說的按引用傳遞實質上是傳遞該對象的地址,該地址其實是按值傳遞的,通過這個地址可以修改其指向內存處對象的值。改變該地址的值毫無意義,只會失去對真實對象的掌控。

回答3:

我來我來

很簡單,你只要理解,引用傳遞傳遞的是一個地址,這個地址傳過去之后會放在被調用方法的本地變量變中,兩個方法就有兩個棧幀,每個棧幀都有自己的本地變量表,互不影響。所以這就是你傳個引用過去,然后改變了引用的指向對原來沒有形象的原因。

那么,為啥obj.val被修改的時候,val的值會改變呢,因為val的值是存在堆中的,他被復制過來,修改,然后又寫回去堆中,所以就更改了。不明白可以繼續提問

標簽: java
相關文章:
主站蜘蛛池模板: 九九99re在线视频精品免费 | 真正全免费视频a毛片 | 国产精品亚洲一区二区三区 | 荡公乱妇蒂芙尼中文字幕 | 亚洲一级毛片免费在线观看 | 欧美成人性色生活片免费在线观看 | 91精品视频免费 | 国产亚洲精品91 | 全部aⅴ极品视觉盛宴精品 全部免费a级毛片 | 日韩精品特黄毛片免费看 | 欧美精品综合一区二区三区 | 一级一级特黄女人精品毛片 | 国产亚洲高清在线精品99 | 三级网址在线观看 | 国产欧美综合在线一区二区三区 | 久久免费视频2 | 欧美精品一区视频 | 91网在线 | 国产黄色片在线免费观看 | 国产欧美精品一区二区三区四区 | 久久女同互慰一区二区三区 | 日韩亚洲一区中文字幕在线 | 一级网站片 | 日韩亚洲国产综合久久久 | 欧美成人性色生活片免费在线观看 | 国产好片无限资源 | 97视频免费观看 | 国产毛片在线高清视频 | 国产精品午夜免费观看网站 | 女人被男人躁得好爽免费文 | 欧美手机在线视频 | 91精品综合| 日韩一区二区三区四区不卡 | 亚洲精品高清国产麻豆专区 | 亚洲国产成人久久99精品 | 日本精品久久久久久久 | 国产深夜福利视频在线播放 | 一级做a爰片欧美一区 | 成人禁在线观看午夜亚洲 | 国产高清天干天天视频 | 国产成人久久久精品一区二区三区 |