Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Incrementor {
- private int _number;
- private int _maximumValue;
- /**
- * Конструктор. Инициализирует приватные переменные.
- */
- Incrementor() {
- _maximumValue = Integer.MAX_VALUE;
- }
- /**
- * Возвращает текущее число. В самом начале это ноль.
- *
- * @return возвращаемое значение
- */
- public int getNumber() {
- return _number;
- };
- /**
- * Увеличивает текущее число на один. После каждого вызова этого
- * метода getNumber() будет возвращать число на один больше.
- */
- public void incrementNumber(){
- _number = (_number < _maximumValue) ? _number + 1 : 0;
- };
- /**
- * Устанавливает максимальное значение текущего числа.
- * Когда при вызове incrementNumber() текущее число достигает
- * этого значения, оно обнуляется, т.е. getNumber() начинает
- * снова возвращать ноль, и снова один после следующего
- * вызова incrementNumber() и так далее.
- * По умолчанию максимум -- максимальное значение int.
- * Если при смене максимального значения число резко начинает
- * превышать максимальное значение, то число надо обнулить.
- * Нельзя позволять установить тут число меньше нуля.
- *
- * @param maximumValue новое значение максимума.
- */
- void setMaximumValue(int maximumValue){
- if(maximumValue >= 0) {
- _maximumValue = maximumValue;
- }
- };
- }
Add Comment
Please, Sign In to add comment