Java.util.concurrent.atomic.AtomicLong.getAndSet()是Java中的一种内置方法,该方法将给定值设置为参数中传递的值,并在更新之前返回该值,该值数据类型是long。
用法:
public final long getAndSet(long val)
参数:该函数接受单个强制参数val,该参数指定要更新的值。
返回值:函数将执行更新运算之前的值返回。
以下示例程序旨在说明上述方法:
示例1:
// Java program that demonstrates
// the getAndSet() 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);
// Updates and sets
long res
= val.getAndSet(10);
System.out.println("Previous value: "
+ res);
// Prints the updated value
System.out.println("Current value: "
+ val);
}
}
输出:
Previous value: 0
Current value: 10
示例2:
// Java program that demonstrates
// the getAndSet() 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);
// Gets and updates
long res = val.getAndSet(12);
System.out.println("Previous value: "
+ res);
// Prints the updated value
System.out.println("Current value: "
+ val);
}
}
输出:
Previous value: 18
Current value: 12