Java - Byte对象的Pass by Reference

Dan*_*her 2 java autoboxing byte pass-by-reference

我在这里读了一些代码: Java是"通过引用传递"还是"传递值"?

public void foo(Dog d)
{
  d.getName().equals("Max"); // true
  d.setName("Fifi");
}

Dog aDog = new Dog("Max");
foo(aDog);
aDog.getName().equals("Fifi"); // true
Run Code Online (Sandbox Code Playgroud)

我可以对Byte对象执行相同的操作.我在我的代码中的这一点,并想知道如何"设置"字节对象的值?

如果我使用=赋值运算符,它似乎执行new Byte()自动装箱?!因此价值不会被传回.

有任何想法吗?问候.

NPE*_*NPE 6

Byte是不可变的,这意味着它的价值无法改变.分配给它将不适用于您的情况,因为这将简单地重新绑定引用(它不会传播回调用者).

您可以使用MutableByte,单元素byte/ Byte数组或自定义类.