AtomicReference getAndSet() method in Java with Examples Last Updated : 17 Sep, 2021 Comments Improve Suggest changes Like Article Like Report The getAndSet() method of a AtomicReference class is used to atomically sets the value of AtomicReference object to newValue which is passed as parameter and returns the old value of the AtomicReference object, with memory effects as specified by VarHandle.getAndSet(java.lang.Object...).VarHandle.getAndSet(java.lang.Object...) specified that variable is handle as memory semantics of setting as if the variable was declared volatile. Syntax: public final V getAndSet?(V newValue) Parameters: This method accepts newValue which is the new value.Return value: This method returns the old value of AtomicReference.Below programs illustrate the getAndSet() method: Program 1: Java // Java program to demonstrate // AtomicReference.getAndSet() method import java.util.concurrent.atomic.AtomicReference; public class GFG { public static void main(String[] args) { // create an atomic reference object. AtomicReference<Double> ref = new AtomicReference<Double>(); // set some value ref.set(1234.00); // get and replace value double oldValue = ref.getAndSet((double)3213); // print System.out.println("OLD Value = " + oldValue); System.out.println("NEW Value = " + ref.get()); } } Output: OLD Value = 1234.0 NEW Value = 3213.0 Program 2: Java // Java program to demonstrate // AtomicReference.getAndSet() method import java.util.concurrent.atomic.AtomicReference; public class GFG { public static void main(String[] args) { // create an atomic reference object. AtomicReference<String> ref = new AtomicReference<String>(); // set some value ref.set("AtomicReference old value"); // get and replace value String oldValue = ref.getAndSet( "AtomicReference new value"); // print System.out.println("OLD Value = " + oldValue); System.out.println("NEW Value = " + ref.get()); } } Output: OLD Value = AtomicReference old value NEW Value = AtomicReference new value References: https://docs.oracle.com/javase/10/docs/api/java/util/concurrent/atomic/AtomicReference.html#getAndSet(V) Create Quiz Comment A AmanSingh2210 Follow 0 Improve A AmanSingh2210 Follow 0 Improve Article Tags : Java Java-Functions Java-util-concurrent-atomic package Explore Java BasicsIntroduction to Java3 min readJava Programming Basics9 min readJava Methods6 min readAccess Modifiers in Java4 min readArrays in Java7 min readJava Strings7 min readRegular Expressions in Java3 min readOOP & InterfacesClasses and Objects in Java5 min readAccess Modifiers in Java4 min readJava Constructors4 min readJava OOP(Object Oriented Programming) Concepts10 min readJava Packages2 min readJava Interface7 min readCollectionsCollections in Java12 min readCollections Class in Java13 min readCollection Interface in Java4 min readIterator in Java4 min readJava Comparator Interface5 min readException HandlingJava Exception Handling6 min readJava Try Catch Block4 min readJava final, finally and finalize4 min readChained Exceptions in Java3 min readNull Pointer Exception in Java5 min readException Handling with Method Overriding in Java4 min readJava AdvancedJava Multithreading Tutorial3 min readSynchronization in Java7 min readFile Handling in Java4 min readJava Method References9 min readJava 8 Stream Tutorial7 min readJava Networking6 min readJDBC Tutorial5 min readJava Memory Management3 min readGarbage Collection in Java6 min readMemory Leaks in Java3 min readPractice JavaJava Interview Questions and Answers15+ min readJava Programs - Java Programming Examples7 min readJava Exercises - Basic to Advanced Java Practice Programs with Solutions5 min readJava Quiz1 min readJava Project Ideas For Beginners and Advanced15+ min read Like