Open In App

AtomicLong getAndAdd() method in Java with examples

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

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

Reference: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html#getAndAdd-long-



Last Updated : 29 Jan, 2019
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads