2
public int getA() {
    return a;
}

public void setA(int a) {
    this.a = a;
}

今、変数をインクリメントする必要がある場合...どちらが方法ですか?

variables.setA(variables.getA()+1);

このように a は常に 1 です。

問題を解決できますか?

4

2 に答える 2

7

そのコードは正しいです (詳細な場合)。以下:

public class Main {

    private int a = 0;

    public int getA() {
        return a;
    }

    public void setA(int a) {
        this.a = a;
    }

    public static void main(String[] args)
    {
        Main variables = new Main();
        System.out.println(variables.getA());
        variables.setA(variables.getA()+1);
        System.out.println(variables.getA());
        variables.setA(variables.getA()+1);
        System.out.println(variables.getA());
        variables.setA(variables.getA()+1);
        System.out.println(variables.getA());
    }
}

版画

0
1
2
3

の冗長性を考えると、variables.setA(variables.getA()+1)それをメソッドにラップしたい場合があります (例:incrementA()またはaddToA(int)など) 。

于 2013-03-07T16:41:45.447 に答える
3

変数をインクリメントする方法は機能するはずですが、新しいメソッドを定義することもできます。

public void incrementA(){
    a++;
}
于 2013-03-07T16:41:32.927 に答える