2013-03-07 30 views
1
public int getA() { 
    return a; 
} 

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

現在,如果我必須增加變量......哪一個是做的方式?獲取和設置並增加一個變量

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

以這種方式永遠是1

我可以解決這個問題?

+3

方法添加到您的類' incrementA(){a ++}' – 2013-03-07 16:41:19

+0

您的代碼會將「a」加1。您是否在尋找更好的方法? – souldzin 2013-03-07 16:42:48

回答

2

你增加一個變量應該工作的方式,但你也可以定義一個新的方法:

public void incrementA(){ 
    a++; 
} 
6

該代碼是正確的(如詳細)。以下:

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)等)