你总是可以让你自己MutableInteger
类
class MutableInteger{
private int value;
public MutableInteger(int v){
this.value = v;
}
public int get(){
return value;
}
public void set(int newValue){
this.value = newValue;
}
@Override
public String toString() {
return Integer.toString(value);
}
}
然后用它在你的代码:
public static void main(String[] args) {
MutableInteger x = new MutableInteger(4);
MutableInteger y = new MutableInteger(3);
int faktor = 2;
skaliere(x,y,faktor);
System.out.println(x + " " + y);
}
public static void skaliere(MutableInteger x, MutableInteger y, int faktor){
x.set(x.get() *faktor);
y.set(x.get() *faktor);
}
既然你做你自己的类,你甚至可以移动skaliere
方法进入你的MutableInteger
class MutableInteger{
...
public void skaliere(int faktor){
this.value *=faktor;
}
}
,让您的代码如下所示:
public static void skaliere(MutableInteger x, MutableInteger y, int faktor){
x.skaliere(faktor);
y.skaliere(faktor);
}
你甚至都不需要静态方法了
注意,黑客也将使它不可能递归或multithreadedly调用该方法。 –