📅  最后修改于: 2023-12-03 15:16:20.287000             🧑  作者: Mango
AtomicInteger
类是Java.util.concurrent包中的一个多线程安全的类,为整型变量提供了原子操作,可以在多线程的场合保证操作的原子性,而且比使用synchronized关键字效率要高。updateAndGet()
方法是AtomicInteger
类的一种方法,用来以原子方式更新当前值,并返回更新后的值。
public final int updateAndGet(IntUnaryOperator updater)
参数:
返回值:
下面是一个示例程序,该程序使用updateAndGet()
方法来从1到5输出值。
import java.util.concurrent.atomic.AtomicInteger;
public class Main {
public static void main(String[] args) {
AtomicInteger number = new AtomicInteger(); // 初始化AtomicInteger对象
int limit = 5; // 设定循环次数
for(int i = 1; i <= limit; i++) {
int updatedNumber = number.updateAndGet(n -> n + 1); // 更新AtomicInteger对象的值
System.out.println(updatedNumber); // 输出更新后的值
}
}
}
程序输出:
1
2
3
4
5
在这个示例中,我们首先创建了一个AtomicInteger
对象,并将其初始化为0。然后,我们设定一个循环次数,从1到5输出值。在每次循环中,我们使用updateAndGet()
方法来以原子方式将当前值加1,并返回更新后的值。最后,我们将更新后的值输出到控制台上。
这个示例演示了updateAndGet()
方法的使用方法,可以在多线程的场合中使用,以保证操作的原子性。