1 java variables pointers arguments
我希望能够访问传递给我的方法的变量.我知道C可能有某种方式将某个地址作为参数传递,然后将其称为指针并能够使用该变量.无论如何,这是一个例子.
void myFunction(address to variable) {
*variable = "example";
}
Run Code Online (Sandbox Code Playgroud)
然后将其称为:
myFunction(&somevariable);
Run Code Online (Sandbox Code Playgroud)
无法通过引用或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;}
}
Run Code Online (Sandbox Code Playgroud)
有了这个课程,你可以这样做:
void myFunction(ChangeableInt arg) {
arg.set(42);
}
...
ChangeableInt val = new ChangeableInt(123);
myFunction(val);
System.out.println(val.get()); // prints 42
Run Code Online (Sandbox Code Playgroud)