如:
int i=9;
foo(i);
System.out.println(i);//Parameter i isn't 9 now
foo(i)应该怎么写,即要改变参数的值(不用返回值来获得)
java里的方法好像不能改变方法参数的值。 

解决方案 »

  1.   

    基本类型是不会改变的。你可以用相关的类的代替
    Integer i= new Integer(9);
    foo(i);
    System.out.println(i.intvalue());
      

  2.   

    public class Test{
    int i = 9;
    public void foo(int i ){   //改变的方法
       this.i=i;
    }
    public int getI(){
       return this.i;
    }
    public static void main(String[] args){
       Test t = new Test();
       t.foo(100);
       System.out.println(t.getI);
    }
    }
      

  3.   

    java的函数的参数都是传值得,对象类型也是传值的,不过对象类型的值是堆上对象的地址。