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); } } |
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); } } |
Previous value: 18 Previous value: 18 Current value: 26