AtomicReference compareAndSet() method in Java with Examples Last Updated : 27 Dec, 2019 Comments Improve Suggest changes Like Article Like Report The compareAndSet() method of a AtomicReference class is used to Atomically sets the value to newValue to AtomicReference object, if the current value of AtomicReference object equal to the expectedValue and returns the true if operation is successful else return false. This method updates the value with memory semantics of setting as if the variable was declared volatile. Syntax: public final V compareAndSet(V expectedValue, V newValue) Parameters: This method accepts expectedValue which is the expected value and newValue which is the new value to set. Return value: This method returns the witness value, which will be the same as the expected value if successful. Below programs illustrate the compareAndSet() method: Program 1: Java // Java program to demonstrate // AtomicReference.compareAndSet() method import java.util.concurrent.atomic.AtomicReference; public class GFG { public static void main(String[] args) { // create an atomic reference object. AtomicReference<Long> ref = new AtomicReference<Long>(); // set some value ref.set(987654321L); // apply compareAndSet() boolean response = ref.compareAndSet(1234L, 999999L); // print value System.out.println(" Value is set = " + response); } } Output: Value is set = false Program 2: Java // Java program to demonstrate // AtomicReference.compareAndSet() 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("Geeks For Geeks"); // apply compareAndSet() boolean response = ref.compareAndSet( "Geeks For Geeks", "GFG"); // print value System.out.println(" Value is set = " + response); } } Output: Value is set = true References: https://docs.oracle.com/javase/10/docs/api/java/util/concurrent/atomic/AtomicReference.html#compareAndSet(V, V) Comment More infoAdvertise with us Next Article AtomicReference compareAndSet() method in Java with Examples A AmanSingh2210 Follow Improve Article Tags : Java Java-Functions Java-util-concurrent-atomic package Practice Tags : Java Similar Reads AtomicReferenceArray compareAndSet() method in Java with Examples The compareAndSet() method of a AtomicReferenceArray class is used to atomically sets the value of index i of AtomicReferenceArray to newValue, if the current value at index i of AtomicReferenceArray object is equal to the expectedValue.This method will return true if update is successful. Syntax: p 2 min read AtomicReference compareAndExchange() method in Java with Examples The compareAndExchange() method of a AtomicReference class is used to Atomically sets the value to newValue to AtomicReference object, if the current value of AtomicReference object which is referred to as the witness value is equal to the expectedValue.This method will return the witness value, whi 2 min read AtomicInteger compareAndSet() method in Java with examples The java.util.concurrent.atomic.AtomicInteger.compareAndSet() is an inbuilt method in java that sets the value to the passed value in the parameter if the current value is equal to the expected value which is also passed in the parameter. The function returns a boolean value which gives us an idea i 2 min read AtomicLong compareAndSet() method in Java with examples The Java.util.concurrent.atomic.AtomicLong.compareAndSet() is an inbuilt method in java that sets the value to the passed value in the parameter if the current value is equal to the expected value which is also passed in the parameter. The function returns a boolean value which gives us an idea if t 2 min read AtomicReference compareAndExchangeRelease() method in Java with Examples The compareAndExchangeRelease() method of a AtomicReference class is used to Atomically sets the value to newValue to AtomicReference object, if the current value of AtomicReference object which is referred to as the witness value is equal to the expectedValue and returns the witness value. This met 2 min read AtomicBoolean compareAndSet() method in Java with Examples The java.util.concurrent.atomic.AtomicBoolean.compareAndSet() is an inbuilt method in java that sets the value to the passed value in the parameter if the current value is equal to the expected value which is also passed in the parameter. The function returns a boolean value which gives us an idea i 2 min read AtomicReferenceArray compareAndExchange() method in Java with Examples The compareAndExchange() method of a AtomicReferenceArray class is used to atomically sets the value of index i of AtomicReferenceArray to newValue, if the current value at index i of AtomicReferenceArray object which is referred to as the witness value is equal to the expectedValue. This method wil 2 min read AtomicReference compareAndExchangeAcquire() method in Java with Examples The compareAndExchangeAcquire() method of a AtomicReference class is used to Atomically sets the value to newValue to AtomicReference object, if the current value of AtomicReference object which is referred to as the witness value is equal to the expectedValue and returns the witness value. This met 2 min read AtomicLongArray compareAndSet() method in Java with Examples The Java.util.concurrent.atomic.AtomicLongArray.compareAndSet() is an inbuilt method in java that atomically sets the element at a position to the given updated value if the current value is equal to the expected value. This method takes the index value, the expected value and the update value as th 3 min read AtomicIntegerArray compareAndSet() method in Java with Examples The Java.util.concurrent.atomic.AtomicIntegerArray.compareAndSet() is an inbuilt method in java that atomically sets the element at a position to the given updated value if the current value is equal to the expected value. This method takes the index value, the expected value and the update value as 5 min read Like