弱问java中如何写一个swap函数呢?
交换两个int在c++中可以写:
void swap(int* x, int* y)
{ int temp;
temp=*x;
*x=*y;
*y=temp;}
但java中没有引用和指针,要完成同样的功能应该怎样写呢?
------解决方案--------------------哦...我没看清楚问题..
这涉及的是JAVA中值传递的问题....由于基本类型是值传递...直接swap不可以
要么用INT数组传递引用...要不通过外部内联的方式
public class Test {
public static void main(String[] args) {
Test t = new Test(1,2);
System.out.println( "i: " + t.i);
System.out.println( "j: " + t.j);
t.swap();
System.out.println( "Swapped! ");
System.out.println( "i: " + t.i);
System.out.println( "j: " + t.j);
}
int i,j;
public Test(int i,int j){
this.i = i;
this.j = j;
}
public void swap() {
int temp;
temp = i;
i = j;
j = temp;
}
}