AtomicLong getAndAdd() method in Java with examples
The Java.util.concurrent.atomic.AtomicLong.getAndAdd() is an inbuilt method in java that adds the given value to the current value and returns the value before updation which is of data-type long.
Syntax:
public final long getAndAdd(long val)
Parameters: The function accepts a single mandatory parameter val which specifies the value to be added to the current value.
Return value: The function returns the value before addition is performed to the previous value.
Below programs illustrate the above method:
Program 1:
// Java program that demonstrates // the getAndAdd() function import java.util.concurrent.atomic.AtomicLong; public class GFG { public static void main(String args[]) { // Initially value as 0 AtomicLong val = new AtomicLong( 0 ); // Adds 7 and gets the previous value long res = val.getAndAdd( 7 ); // Prints the updated value System.out.println( "Previous value: " + res); System.out.println( "Current value: " + val); } } |
Output:
Previous value: 0 Current value: 7
Program 2:
// Java program that demonstrates // the getAndAdd() function import java.util.concurrent.atomic.AtomicLong; public class GFG { public static void main(String args[]) { // Initially value as 18 AtomicLong val = new AtomicLong( 18 ); // Prints the updated value System.out.println( "Previous value: " + val); // Adds 8 and gets the previous value long res = val.getAndAdd( 8 ); // Prints the updated value System.out.println( "Previous value: " + res); System.out.println( "Current value: " + val); } } |
Output:
Previous value: 18 Previous value: 18 Current value: 26