包装类是通过值传递还是通过引用传递?

Arv*_*han 1 java

我知道java是通过引用传递的,但仅适用于Java对象.但是为什么它不适用于Java Wrapper类?包装类如Integer,Float,Double是通过引用传递还是通过值传递?因为每当我在方法中传递此类的对象并且更改某些值时,但在该方法之外我没有获得更新的值.

Sur*_*tta 5

pass by value讨论之上,Java中的所有包装类都是不可变的.他们复制了原语的行为.您需要返回最新值以查看更改.

  • @ArvindChavhan 因为它们是不可变的:) 阅读有关不可变类的信息。你就会明白:https://en.wikipedia.org/wiki/Primitive_wrapper_class (2认同)
  • @ArvindChavhan Java不是通过引用传递的.在Java中,引用按值传递. (2认同)