Java实现一个环形计数器(数到最大值后重新从最小值开始计数)
备忘。
public class CircularCounter {
private final AtomicInteger counter;
private final int maxValue;
public CircularCounter(int initialValue, int maxValue) {
this.counter = new AtomicInteger(initialValue);
this.maxValue = maxValue;
}
public int getAndIncrement() {
return counter.getAndUpdate(current -> (current + 1) % maxValue);
}
}