如何在Java中通过引用传递基本类型?例如,如何使int
传递给方法的值可修改?
在Java中,没有一种方法可以通过引用直接传递基元。
一种解决方法是改为将引用传递给包装类的实例,该实例然后将原语包含为成员字段。这样的包装器类可能非常容易为自己编写:
public class IntRef { public int value; }
但是,一些预先构建的包装器类又如何,因此我们不必编写自己的包装器类?
问题内容: 是否有可能将原始数据作为Java中的参数传递给方法,而无需将它们包装到相应的类对象中? 问题答案: 在Java中,不可能通过引用传递基元。为了模拟这一点,必须将引用传递给可变包装类的实例。 请参见如何通过引用传递原始数据类型?有关可变包装类的更多信息。
问题内容: 您可以使用关键字“ ref”在.NET中进行操作。用Java有什么办法吗? 问题答案: 您正在用自己的方法做什么?如果仅填充现有数组,则不需要.NET或Java中的按引用传递语义。在这两种情况下,引用都将按值传递-因此对 对象的 更改将由调用者看到。这就像告诉某人您的住所地址,并要求他们向其提供物品-没问题。 如果您 确实 需要传递引用语义,即调用方将看到对参数本身所做的任何更改,例如
问题内容: 这两个代码有什么区别: 代码A: 哪里 VS. 代码B: 这两个代码之间有什么区别吗? 问题答案: Java始终按值传递参数,而不按引用传递参数。 让我通过一个例子解释一下: 我将逐步解释这一点: 声明一个名为ftype 的引用,Foo并将其分配给Foo具有属性的type的新对象”f”。 从方法方面,声明Foo具有名称的类型引用,a并将其初始分配给null。 调用方法时changeRe
问题内容: 我希望有人可以为我澄清这里发生的事情。我在整数类中挖了一下,但是由于整数 覆盖 了运算符,所以我无法弄清楚出了什么问题。我的问题是这条线: 这是我的推理:我知道java通过值传递(或通过reference的值传递),因此我认为在下面的示例中,整数对象应每次递增。 这是我的预期输出: 这是实际输出。 为什么会这样? 问题答案: 有两个问题: 整数是通过值而不是通过引用传递的。在方法内部更
我有以下密封类: 我希望将此从xml传递给视图模型: 然后我在需要将信息传递给click处理程序的视图中使用lambdas: 我得到这个错误: 找不到标识符“pot”。检查标识符的拼写是否正确,并且没有或标记丢失。 我也尝试过直接导入,但仍然不起作用
问题内容: 是否可以通过Java通过引用传递对象 就像在C#中一样 问题答案: 不,这在Java中是不可能的。 在Java中,方法的所有参数均按值传递。注意非原始型的的变量,它们是对对象的引用,也由值来传递:在这种情况下, 参考 是 由值来传递 。请注意,按值传递引用与按引用传递不同。