参数中的 Java 访问变量

标签 java variables pointers arguments

<分区>

我希望能够访问传递给我的方法的变量。我知道 C 可能有某种方法可以将某物的地址作为参数传递,然后将其作为指针引用并能够使用该变量。无论如何,这是一个例子。

void myFunction(address to variable) {
    *variable = "example";
}

然后称它为:

myFunction(&somevariable);

最佳答案

在 Java 中无法通过引用或指针传递参数,因此实现您想要的效果的唯一方法是传递一个可变对象,并在方法内部更改它的值你调用:

public class ChangeableInt {
    private int number;
    public ChangeableInt(int value) {number = value;}
    public int get() {return number;}
    public void set(int value) {number = value;}
}

有了这个类,你可以这样做:

void myFunction(ChangeableInt arg) {
   arg.set(42);
}
...
ChangeableInt val = new ChangeableInt(123);
myFunction(val);
System.out.println(val.get()); // prints 42

关于参数中的 Java 访问变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15203969/

相关文章:

php - 如何在 SQL 语句中使用 PHP 变量

php - 变量在 PHP 而不是在 Blade 中?

c++使用来自基类的指针访问派生类

c++ - C++ 获取指针指向的变量名称

c - "initialization makes integer from pointer without a cast"数组初始化中逐渐减弱

java - 将十进制数转换为完整整数 - BigDecimal 是否矫枉过正?

java - Mac 上最好的免费 Java 分析器

php - 如何在 MySQL 语句中包含 PHP 变量

java - java中对象的赋值和返回

java - 为什么在 spring security 中不在 FilterChainProxy 中的过滤器上调用 init()?