简单类型变量值不可改变,如 int double long ...
Integer, Long, Double, String 等是final class,也不可变
void swap(int a,int b) {...}
这种函数在java中不能实现,不过可以采用如下方法:
public class Swap {
private int x, y;
public Swap(int x, int y) {
this.x = x;
this.y = y;
}
public void doSwap() {
int i = this.y;
this.y = this.x;
this.x = i;
}
public int getX() { return x;}
public int getY() { return y;}
public static void main(String[] args) {
int x = 5;
int y = 6;
System.out.println("x=" + x);
System.out.println("y=" + y);
System.out.println("----------------");
Swap s = new Swap(x, y);
s.doSwap();
x = s.getX();
y = s.getY();
System.out.println("x=" + x);
System.out.println("y=" + y);
}
public class Test{
static int x;
static int y;
static void swap(Test a){
int tmp = 0;
tmp = a.x;
a.x = a.y;
a.y = tmp;
}
public static void main(String[] args){
Test a = new Test();
x=4;
y=5;
swap(a);
System.out.println(x);
System.out.println(y);
}
}