久久精品国产99国产精品,农村大炕弄老女人,人马配速90分钟,香蕉成人伊视频在线观看

java string的所有方法 Java中string的用法?

Java中string的用法?String a=“ABC”此時,已為String類型的變量分配了內存地址[即堆],然后重新分配相同的變量。引用類型變量的內存地址指向相同的內存地址,因此重新分配時,內存

Java中string的用法?

String a=“ABC”

此時,已為String類型的變量分配了內存地址[即堆],然后重新分配相同的變量。引用類型變量的內存地址指向相同的內存地址,因此重新分配時,內存中的值會發生變化。例如:string a=“BCD”此時,內存中的值就變成了BCD

關于這個問題,不同的人有不同的理解。對于Java初學者來說,他們可能認為Java中的參數傳遞分為值傳遞和引用傳遞。至于為什么,教科書上說了。對于程序員的某些工作年限,他們可能會認為,如果傳遞的參數類型是普通類型,則傳遞的是值;如果參數是對象,則傳遞的是引用。另一些人認為,只有Java中的值傳遞才是主要問題的主題。

對于Java編程語言,前兩種理解是錯誤的。Java中只使用值傳遞。對我來說,一開始,我也理解了價值傳遞和參照傳遞的理論,但隨著自己代碼的積累,我逐漸發現事實并非如此。那么為什么只有價值傳遞呢?

首先,讓我們了解什么是值傳遞,什么是引用傳遞?

值傳輸意味著調用函數時,實際參數值被復制并傳遞給被調用函數。修改被調用函數中的參數值不會影響原始參數值。

引用傳遞意味著調用函數時,實際參數的地址直接傳遞給被調用函數。修改被調用函數中的參數值將影響原始參數值。

如果傳遞的參數類型是普通基本類型,則必須復制實際參數值并將其傳遞給形式參數。但是,當參數類型是對象時,它也是復制的參數值,并將其傳遞給形式參數。只復制對象的引用地址,即內存中分配的存儲地址,而不是直接傳遞的引用地址。

此時,有些人可能會問為什么一個對象會被傳遞給另一個方法。在此方法中修改對象的屬性值時,原始調用方法中對象的屬性值將更改。這不就是參考傳遞嗎?

事實上,這是一個非常令人困惑的問題。如果你仔細看看上面的說法,事實并非如此。將一個對象傳遞給另一個方法會傳遞什么?傳遞對象引用的地址。對象引用的地址是否已在其他方法中修改?原始對象引用是否受影響?不

!因此,Java中沒有引用傳遞,只有值傳遞。不要犯任何錯誤!

主站蜘蛛池模板: 溆浦县| 余江县| 和田县| 汉源县| 扶风县| 屏山县| 肥西县| 林芝县| 合水县| 隆安县| 宜君县| 德保县| 玛曲县| 金堂县| 卢龙县| 舞钢市| 龙陵县| 正安县| 澄城县| 烟台市| 班玛县| 六安市| 静海县| 贵州省| 安岳县| 巧家县| 湖州市| 平远县| 丹东市| 青神县| 玉山县| 桐乡市| 龙陵县| 白山市| 会宁县| 富阳市| 墨脱县| 察哈| 息烽县| 中江县| 河源市|