我知道java是通過引用傳遞,但僅用於Java對象。但爲什麼它不適用於Java Wrapper類?包裝類如Integer,Float,Double是通過引用還是按值傳遞?因爲每當我在方法中傳遞這樣的類的對象並且改變一些值,但是在該方法外部時,我沒有得到更新的值。包裝類是按值傳遞還是按引用傳遞?
1
A
回答
5
在pass by value
的討論之上,Java中的所有包裝器類都是不可變的。他們複製原語的行爲。您需要返回最新值以查看更改。
+0
是的,如果我返回值我正在更新值。但我不明白,即使是Java通過引用傳遞爲什麼它不適用於Wrapper類。 –
+0
@ArvindChavhan因爲它們是不可變的:)閱讀關於不可變類。你會明白:https://en.wikipedia.org/wiki/Primitive_wrapper_class –
+0
好吧,我會讀到它。感謝您的幫助 –
相關問題
- 1. 包裝函數的遞歸函數是「按引用傳遞」值
- 2. std :: for_each是按值還是按引用傳遞?
- 3. Java是傳遞按值傳遞按引用兩個
- 4. Objective-C:NSLog傳遞值(按引用傳遞與按值傳遞)
- 5. 這是通過引用還是按價值傳遞?
- 6. JavaScript是通過引用還是按值傳遞?
- 7. Java是通過值傳遞還是通過引用傳遞?
- 8. C++按引用傳遞並按值傳遞副作用?
- 9. 哪些類型按引用傳遞,哪些類型按值傳遞?
- 10. python - 按值或按引用傳遞
- 11. Matlab矩陣是通過值傳遞還是傳遞參考?
- 12. PHP:按引用傳遞
- 13. Ç - 按值傳遞和引用傳遞不一致
- 14. c#對象通過引用傳遞或按值傳遞
- 15. 困惑於通過引用傳遞和按值傳遞#
- 16. Java數組:Java通過引用傳遞並按值傳遞?
- 17. 按值傳遞char *
- 18. 按值傳遞與傳遞參考
- 19. Java按值或通過引用傳遞?
- 20. RCPP通過引用傳遞與按值
- 21. VB6按值傳遞並通過引用
- 22. 通過引用或按值傳遞
- 23. 變量總是按值傳遞
- 24. IList是否按價值傳遞?
- 25. Haskell指針是否按值傳遞?
- 26. PHP中的對象是通過值還是引用傳遞的?
- 27. 編譯器如何實現按值傳遞和按引用傳遞?
- 28. 按值傳遞字符串vs按值傳遞每個字符
- 29. AS3沒有按數值傳遞數字,而是通過引用?
- 30. 使用MVVM Light的消息傳遞ObservableCollection時,是通過傳遞的副本還是傳遞的引用?
'Java' - >'pass by value'。 – Satya
[是Java的「傳遞引用」還是「傳遞值」?]的可能重複?(http://stackoverflow.com/questions/40480/is-java-pass-by-reference-or-pass按值計算) – childofsoong
Java總是按值傳遞。包裝類可能看起來像傳遞引用,但它們不是。這是一個很好的閱讀。 http://javadude.com/articles/passbyvalue.htm – yogidilip