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