定义一个函数
  void temp(int i)
  {
    i = i+10;
  }
我在一个按钮中写入
int itemp = 10;
 temp(itemp);
System.out.println("i = " + i);
结果是显示10;
我想要显示出20.应该怎么处理.不用函数返回值.函数返回值有自己的用处.

解决方案 »

  1.   

    局部变量不能满足你的要求
    使用类的成员变量或者static吧
      

  2.   

    return 一下就可以得到结果了么
      

  3.   

    void temp(int &i)
    {}
      

  4.   

    class tempInt
    {
       int a = 0;
       tempInt(int i)
       {
         a = i;
       }}
    函数
     void temp(tempInt t)
      {
        t.a = t.a+10;
      }
    使用
    tempInt tem = new tempInt(10);
    temp(tem);
      

  5.   

    要 return 一个值才可以
      

  6.   

    按值傳遞,怎么可能取得到呢。
    用靜態變量吧 static int i;
      

  7.   

    int temp(int i)
      {
        return i+10;
      }
    int itemp = 10;
     
    System.out.println("i = " + temp(itemp));
      

  8.   

    有现成的类库干吗不用??
     void temp(Integer t)
      {
        t = new Integer(t.valueOf()+10);
      }
      

  9.   

    楼主给temp函数的参数付了值,等于10.应该要 return 一个值才可以
      

  10.   

    楼上的方法是错误的,可以用 ll42002 的方法, 或者用一个数组作参数
    void temp(int[] i) {
        i[0] += 10;
    }
      

  11.   

    class test{
      int temp1(int i){
       return i+=10;
      }
      void temp2(int i){
        int j=temp1(i);
      }
    }
      

  12.   

    写两个函数吧
    JAVA中是按值传递的
      

  13.   

    不能用Integer
    虽然Integer是int的对象包装,但是Integer对象的数据部分是final类型的,因此不能通过它去得到想要的结果。
      

  14.   

    把i定义成静态全局变量,然后改一下
    void temp(int j)
      {
        i = j+10;
      }
    下面不变
    int itemp = 10;
     temp(itemp);
    System.out.println("i = " + i);
      

  15.   

    最方便是传数组,或者你自己定义一个和Integer差不多的对象,在加法方法中修改它的int值就可以了。