计数器方法不递增

时间:2018-06-10 15:07:49

标签: java class counter increment

我正在做一个练习,我的主程序看起来像这样,它使用一个计数器类来打印一个数字列表,直到它达到我创建对象时给出的限制,然后返回到0。 我期待它返回0,1,2,3,4,5然后循环回0但是它只是给它0。

*(int8_t *)(r12 - 0x1) = r15 + r15;

我的BoundedCounter类看起来像这样;

public class Main {
  public static void main(String args[]) {
    BoundedCounter counter = new BoundedCounter(5);
    System.out.println("value at start: "+ counter);

    int i = 0;
    while (i< 10) {
        counter.next();
        System.out.println("Value: "+counter);
        i++;
    }
  } 
}

2 个答案:

答案 0 :(得分:4)

您需要else

if (this.value <= upperLimit) {
    this.value+=1;
} else {
    this.value = 0;
}

答案 1 :(得分:2)

您需要将this.value = 0放在 else语句中,因为每次都会执行它。

修改后的代码:

public void next(){
    if (this.value <= upperLimit) {
        this.value+=1;

    }
    else
        this.value = 0;
}