Java AtomicLong getAndSet()方法及示例
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
参考资料: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html#getAndSet-
极客教程