在post增量中更新for循环中的变量

时间:2015-11-09 15:49:52

标签: java for-loop

我正在研究一个简单的例子。最初将a的值设为1,将b设为2.我在打印a和b时调用方法进行更新。如预期的那样将是1和2。但是我应该在每个循环中更新这个a和b,我该怎么做?我想到了返回列表。有没有一种简单的方法来实现它?

public class UpdateTest {

    public static void main(String[] args) {
        int a=1;
        int b=2;
        for (int i = 0; i < 5; i++) {
            update(a,b);
        }

       System.out.println(a+"------"+b);
    }

    private static void update(int a, int b) {
        // TODO Auto-generated method stub
        for (int i = 0; i < 10; i++) {
            a++;
            b++;
        }
    }

}

2 个答案:

答案 0 :(得分:2)

您可以将值放在类中,例如

2

像这样初始化

0

然后相应地修改更新方法

class Pair {
    int a, b;
    Pair(int a, int b) {
        this.a = a;
        this.b = b;
    }
}

答案 1 :(得分:1)

它不是很好但会完成这项工作:你只需返回一个包含a和b值的数组。

public class UpdateTest {

    public static void main(String[] args) {
        int a=1;
        int b=2;
        for (int i = 0; i < 5; i++) {
            int[] ret = update(a,b);
            a = ret[0];
            b = ret[1];
        }

        System.out.println("a= " + a + ", b= " +b);
    }

    private static int[] update(int a, int b) {
        for (int i = 0; i < 10; i++) {
            a++;
            b++;
        }
        int[] ret = {a,b};
        return ret;
    }
}