首頁  >  文章  >  Java  >  Java 是否透過引用傳遞原語?

Java 是否透過引用傳遞原語?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-07 17:45:02926瀏覽

Does Java Pass Primitives by Reference?

Java 中基元的按引用傳遞

Java 採用按值傳遞,與 C 不同,後者使用按引用傳遞。這可以創建這樣的場景:在方法中修改基本資料類型(例如 int、float)不會影響其在方法外部的值。

考慮以下Java 程式碼:

此程式碼列印:

toyNumber 變數在play() 方法之外不會被修改,因為它是按值傳遞的。

Java 中按引用傳遞的替代方法:

要模仿C 在Java 中透過引用傳遞原語,可以使用以下幾個選項:

1。公共成員變數:

使用 toyNumber 的公共成員變數建立一個類別,並傳遞對該類別的引用。

2.回傳值:

不是透過引用傳遞,而是從方法傳回修改後的值。

在 main 方法中,使用回傳值更新 toyNumber。

3。類別/靜態變數:

如果 play() 和 main() 方法屬於同一類,則將 toyNumber 轉換為類別成員變數。

4.一個元素的陣列:

這是一種 hack,但需要傳遞一個單元素陣列並修改其值。

以上是Java 是否透過引用傳遞原語?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn