Class IntegerValue
This class extends Value<Integer> and adds a convenience method for incrementing
the value, which is useful for counting operations in lambdas and loops.
Notes:
-
This class is not thread-safe. For concurrent access, use
AtomicIntegerinstead.
Example:
See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdds the specified value to the current value.Adds the specified value to the current value and returns the new value.static IntegerValuecreate()Creates a new integer value initialized to0 .Decrements the value by 1.Decrements the value by 1 and returns the new value.Returns the current value and then increments it.Increments the value by 1.Increments the value by 1 and returns the new value.booleanChecks if the current value is equal to the specified value.booleanChecks if the current value matches any of the specified values.static IntegerValueCreates a new integer value with the specified initial value.
-
Constructor Details
-
IntegerValue
public IntegerValue()Constructor. -
IntegerValue
Constructor.- Parameters:
value- The initial value.
-
-
Method Details
-
create
Creates a new integer value initialized to0 .Example:
IntegerValue
counter = IntegerValue.create ();assertEquals (0,counter .get());- Returns:
- A new integer value.
-
of
Creates a new integer value with the specified initial value.Example:
IntegerValue
counter = IntegerValue.of (42);assertEquals (42,counter .get());- Parameters:
value- The initial value.- Returns:
- A new integer value.
-
add
Adds the specified value to the current value.Example:
IntegerValue
value = IntegerValue.of (10);value .add(5);assertEquals (15,value .get());- Parameters:
x- The value to add.- Returns:
- This object.
-
addAndGet
Adds the specified value to the current value and returns the new value.Example:
IntegerValue
value = IntegerValue.of (10);int result =value .addAndGet(5);// Returns 15 assertEquals (15,value .get());- Parameters:
x- The value to add.- Returns:
- The new value after addition.
-
decrement
Decrements the value by 1.Example:
IntegerValue
counter = IntegerValue.of (5);counter .decrement();assertEquals (4,counter .get());- Returns:
- This object.
-
decrementAndGet
Decrements the value by 1 and returns the new value.Example:
IntegerValue
counter = IntegerValue.of (5);int result =counter .decrementAndGet();// Returns 4 assertEquals (4,counter .get());- Returns:
- The decremented value.
-
getAndIncrement
Returns the current value and then increments it.This is a convenience method commonly used for counting operations in lambdas and loops.
Example:
IntegerValue
counter = IntegerValue.of (5);int current =counter .getAndIncrement();// Returns 5 int next =counter .get();// Returns 6 - Returns:
- The value before it was incremented.
-
increment
Increments the value by 1.Example:
IntegerValue
counter = IntegerValue.of (5);counter .increment();assertEquals (6,counter .get());- Returns:
- This object.
-
incrementAndGet
Increments the value by 1 and returns the new value.Example:
IntegerValue
counter = IntegerValue.of (5);int result =counter .incrementAndGet();// Returns 6 assertEquals (6,counter .get());- Returns:
- The incremented value.
-
is
Checks if the current value is equal to the specified value.Uses
Utils.eq(Object, Object)for deep equality comparison, which handles nulls safely.Example:
IntegerValue
value = IntegerValue.of (42);assertTrue (value .is(42));assertFalse (value .is(43)); -
isAny
Checks if the current value matches any of the specified values.Uses
Utils.eq(Object, Object)for deep equality comparison of each value.Example:
IntegerValue
value = IntegerValue.of (5);assertTrue (value .isAny(3, 5, 7));assertFalse (value .isAny(1, 2));- Parameters:
values- The values to compare to.- Returns:
true if the current value matches any of the specified values.
-