Java.AtomicLong.getAndUpdate()方法是一种内置方法,该方法通过对当前值应用指定的操作来更新对象的当前值。它以LongUnaryOperator接口的对象为参数,并将该对象中指定的操作应用于当前值。它返回先前的值。
用法:
public final long getAndUpdate(LongUnaryOperator function)
参数:此方法接受LongUnaryOperator函数作为参数。
它将给定的函数应用于对象的当前值。
返回值:该函数返回对象的先前值。
实例演示函数。
import java.util.concurrent.atomic.AtomicLong;
import java.util.function.LongUnaryOperator;
public class Demo {
public static void main(String[] args)
{
// AtomicLong initialized with a value of -20000
AtomicLong al = new AtomicLong(-20000);
// Unary operator defined to negate the value
LongUnaryOperator unaryOperator = (x) -> - x;
// Function called and the unary operator
// is passed as an argument
long x = al.getAndUpdate(unaryOperator);
System.out.println("Previous value is " + x);
System.out.println("Updated Value is " + al);
}
}
输出:
Previous Value is -20000 Updated value is 20000
参考: https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html
相关用法
- Java AtomicReferenceArray getAndUpdate()用法及代码示例
- Java AtomicIntegerArray getAndUpdate()用法及代码示例
- Java AtomicReference getAndUpdate()用法及代码示例
- Java AtomicLongArray getAndUpdate()用法及代码示例
- Java AtomicLong get()用法及代码示例
- Java AtomicLong set()用法及代码示例
- Java AtomicLong updateAndGet()用法及代码示例
- Java AtomicLong compareAndSet()用法及代码示例
- Java AtomicLong getAndIncrement()用法及代码示例
- Java AtomicLong lazySet()用法及代码示例
- Java AtomicLong getAndAdd()用法及代码示例
- Java AtomicLong toString()用法及代码示例
- Java AtomicLong doubleValue()用法及代码示例
- Java AtomicLong accumulateAndGet()用法及代码示例
- Java AtomicLong addAndGet()用法及代码示例
注:本文由纯净天空筛选整理自CharchitKapoor大神的英文原创作品 AtomicLong getAndUpdate() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。