就是我想写一个函数,交换两个变量的值,java貌似只有值传递,那么怎么改变啊?
我靠。。java怎么这么难?!!!如果c++有指针,有引用。
java中怎么办???
在线等。哎

解决方案 »

  1.   

    比如:
    void swap(int a,int b){
    }
    输出a跟b的值
    这个没有引用没有指针。。怎么传?
      

  2.   

    中间变量???
    这样?
    void swap(int a,int b){
    int c=a;
    a=b;
    b=c;
    return;
    }
    system.out.println("a is: "+a);
    system.out.println("b is: "+b);肯定不行啊
      

  3.   

    java有引用。方法调用有值传递和引用传递。
      

  4.   


    //定义一个Point类
    class Point{
    int x;
    int y;
    //构造方法
    Point(int x,int y){
    this.x=x;
    this.y=y;
    }
    Point(){

    }
    //swap方法
    Point swap(){
    int z;
    z=x;
    x=y;
    y=z;
    return this;
    }
    //重写 toString方法
    public String toString(){
    return "x:"+x+"\ny:"+y;
    }
    }
    public class TestSwap { /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Point p=new Point(3,5);
    p=p.swap();
    System.out.println(p);
    }
    }