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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。