另外查了一下资料,发现用
public class test
{
  public int a;  public void changepara(testcz b)
  {
    b.a = 2;
  }  public static void main(String[] args)
  {
    test bb = new test();
    bb.a = 0;
    bb.changepara(bb);    System.out.println(bb.a);
  }}
可以打印出2,但是参数必须是自己定义的一个类的对象才行,这样也太麻烦了,有没有别的办法?

解决方案 »

  1.   

    没错,参数必须是对象,传递的才是引用。如果参数是原始类型(int\float\double等),传递的只能是值。
    要实现你的功能:
    一是把整数变量声明为静态的
    二是用整数数组代替整数
      

  2.   

    我想问一下,为什么用Integer类也不行,它的对象传的不是引用吗??
      

  3.   

    如:
    public class test2
    {
      public void changepara(Integer a)
      {
    a = new Integer(2);
      }  public static void main(String[] arg)
      {
        test2 b = new test2();
        int c = 0;
        Integer a = new Integer(c);
        b.changepara(a);
        System.out.println(a);
      }
    }输出还是0。
      

  4.   

    String 也不可以
    该怎么解决呢 ?
      

  5.   

    bigcrazy(大疯狂) 不是说了吗,如果参数是原始类型(int\float\double等),传递的只能是值
      

  6.   

    to bigcrazy(大疯狂)
    请问你说的 一是把整数变量声明为静态的 二是用整数数组代替整数
    具体如何实现呢?能给个简单的例子吗?谢谢。