Java - 通过引用传递 Byte 对象

标签 java byte pass-by-reference autoboxing

我在这里读了一些代码: Is Java "pass-by-reference" or "pass-by-value"?

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

我可以对 Byte 对象执行相同的操作吗?我现在在代码中想知道如何“设置”字节对象的值?

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

有什么想法吗?问候。

最佳答案

Byte 是不可变的,这意味着它的值不能更改。在您的情况下分配给它不起作用,因为这只会重新绑定(bind)引用(不会传播回调用者)。

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

关于Java - 通过引用传递 Byte 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21173471/

相关文章:

java - 何时使用 maven 依赖管理和依赖

java - 我有一个字符串,并希望它在 java 中重复 'l' 次

java - 字节数据类型如何有助于节省大型数组中的内存

rust - 当方法需要值的所有权时,按值传递还是按引用传递更传统?

c++使用每个元素引用初始化数组?

Java - 对 ArrayList 进行排序

java - Hybris - 无法增加 MySql DB 中的列大小

c++ - 如何在 4 字节 int 中打印出每个字节的内容

C# 字节处理

Java - 对象状态在方法调用后不会改变