The Java.DoubleAccumulator.getThenReset() is an inbuilt method in java that is equivalent in effect to get() followed by reset(). Firstly, it gets the current value and then resets the value. The reset value is zero. The return type is int.
Syntax:
public double getThenReset()
Parameters: The method does not accepts any parameter.
Return Value: The method returns the value before reset.
Below programs illustrate the above method:
Program 1:
// Java program to demonstrate// the getThenReset() method  import java.lang.*;import java.util.concurrent.atomic.DoubleAccumulator;  public class GFG {    public static void main(String args[])    {          DoubleAccumulator num            = new DoubleAccumulator(                Double::sum, 0L);          // accumulate operation on num        num.accumulate(42);        num.accumulate(10);          num.get();        // before getThenReset the value is        System.out.println("Old value is: "                           + num);          // getThenResets current value        num.getThenReset();          // Print after getThenReset operation        System.out.println("Current value is: "                           + num);    }} |
Old value is: 52.0 Current value is: 0.0
Program 2:
// Java program to demonstrate// the getThenReset() method import java.lang.*;  import java.util.concurrent.atomic.DoubleAccumulator;  public class GFG {    public static void main(String args[])    {          DoubleAccumulator num            = new DoubleAccumulator(                Double::sum, 0L);          // accumulate operation on num        num.accumulate(74);        num.accumulate(1);          num.get();        // before getThenReset the value is        System.out.println("Old value is: "                           + num);          // getThenResets current value        num.getThenReset();          // Print after getThenReset operation        System.out.println("Current value is: "                           + num);    }} |
Old value is: 75.0 Current value is: 0.0
