1package com.osroyale.util;
3import java.util.concurrent.atomic.AtomicInteger;
42* The container
class that contains functions to simplify the modification of a
46 * This
class is similar in functionality to {@link AtomicInteger} but does not
47 * support atomic operations, and therefore should not be used across multiple
50 * @author lare96 <http:
52public final class MutableNumber
extends Number implements Comparable<MutableNumber> {
57 private static final long serialVersionUID = -7475363158492415879L;
70 public MutableNumber(
int value) {
77 public MutableNumber() {
82 public String toString() {
83 return Integer.toString(value);
87 public int hashCode() {
88 return Integer.hashCode(value);
92 public boolean equals(Object obj) {
97 if (!(obj instanceof MutableNumber))
99 MutableNumber other = (MutableNumber) obj;
100 return value == other.value;
104 public int compareTo(MutableNumber o) {
105 return Integer.compare(value, o.value);
114 public int intValue() {
119 public long longValue() {
124 public float floatValue() {
125 return (
float) value;
129 public double doubleValue() {
130 return (
double) value;
143 public int getAndIncrement(
int amount,
int maximum) {
159 public int getAndIncrement(
int amount) {
160 return getAndIncrement(amount, Integer.MAX_VALUE);
169 public int getAndIncrement() {
170 return getAndIncrement(1);
183 public int incrementAndGet(
int amount,
int maximum) {
198 public int incrementAndGet(
int amount) {
199 return incrementAndGet(amount, Integer.MAX_VALUE);
208 public int incrementAndGet() {
209 return incrementAndGet(1);
218 public MutableNumber increment() {
233 public int getAndDecrement(
int amount,
int minimum) {
249 public int getAndDecrement(
int amount) {
250 return getAndDecrement(amount, Integer.MIN_VALUE);
259 public int getAndDecrement() {
260 return getAndDecrement(1);
273 public int decrementAndGet(
int amount,
int minimum) {
288 public int decrementAndGet(
int amount) {
289 return decrementAndGet(amount, Integer.MIN_VALUE);
298 public int decrementAndGet() {
299 return decrementAndGet(1);
318 public void set(
int value) {