AtomicLongArray getAndAdd() method in Java with Examples
The Java.util.concurrent.atomic.AtomicLongArray.getAndAdd() is an inbuilt method in Java that atomically adds the given value to the element at an index of the AtomicLongArray. This method takes the index value of the AtomicLongArray and the value to be added as the parameters and returns the value before the add operation. The function getAndAdd() is similar to addAndGet() but the former function returns the value before the add operation whereas the latter returns the value after the add operation.
Syntax:
public final long getAndAdd(int i, long delta)
Parameters: The function accepts two parameters:
- i – The index where value is to be added.
- delta – The value to be added.
Return value: The function returns the value before the add operation which is in long.
Below programs illustrate the above method:
Program 1:
Java
import java.util.concurrent.atomic.AtomicLongArray;
public class GFG {
public static void main(String args[])
{
long a[] = { 10 , 22 , 33 , 44 , 55 };
AtomicLongArray arr = new AtomicLongArray(a);
System.out.println( "The array : " + arr);
int idx = 0 ;
long x = 16 ;
long prev = arr.getAndAdd(idx, x);
System.out.println( "Value at index " + idx
+ " before update is " + prev);
System.out.println( "The array after update : "
+ arr);
}
}
|
Output:
The array : [10, 22, 33, 44, 55]
Value at index 0 before update is 10
The array after update : [26, 22, 33, 44, 55]
Program 2:
Java
import java.util.concurrent.atomic.AtomicLongArray;
public class GFG {
public static void main(String args[])
{
long a[] = { 1 , 2 , 3 , 4 , 5 };
AtomicLongArray arr = new AtomicLongArray(a);
System.out.println( "The array : " + arr);
int idx = 3 ;
long x = 16 ;
long prev = arr.getAndAdd(idx, x);
System.out.println( "Value at index " + idx
+ " before update is "
+ prev);
System.out.println( "The array after update : "
+ arr);
}
}
|
Output:
The array : [1, 2, 3, 4, 5]
Value at index 3 before update is 4
The array after update : [1, 2, 3, 20, 5]
Reference:
https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLongArray.html#getAndAdd-int-long-
Last Updated :
24 Nov, 2021
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...