📌  相关文章
📜  Java中的 AtomicLongArray incrementAndGet() 方法及示例(1)

📅  最后修改于: 2023-12-03 15:16:20.402000             🧑  作者: Mango

Java中的 AtomicLongArray incrementAndGet() 方法及示例

AtomicLongArrayJava 中的原子数组,允许在多线程环境下以原子方式进行操作。其中,incrementAndGet() 方法用于原子地将指定位置的元素增加 1,然后返回更新后的值。

方法签名
public final long incrementAndGet(int i)
参数说明

| 参数 | 描述 | | ---- | ------------------------------------------------------------ | | i | 要增加的元素的索引 |

返回值

incrementAndGet(int i) 方法返回更新后的值。

示例代码

下面的代码示例演示了 incrementAndGet(int i) 方法的使用。

import java.util.concurrent.atomic.AtomicLongArray;

public class Example {
    public static void main(String[] args) {
        AtomicLongArray array = new AtomicLongArray(5);
        array.set(2, 10);
        long value = array.incrementAndGet(2);
        System.out.println(value);  // 输出:11
    }
}

代码解析:

  1. 创建一个 AtomicLongArray 对象,长度为 5。
  2. 在索引为 2 的位置设置值为 10。
  3. 调用 incrementAndGet(int i) 方法对索引为 2 的元素进行原子增加 1。
  4. 输出更新后的值,即 11。
注意事项
  • AtomicLongArray 内部使用了 volatile 关键字,因此可以保证可见性。
  • incrementAndGet(int i) 方法操作的是数组中的某个元素,而非整个数组。如果要对整个数组进行原子操作,可以使用 AtomicLongArray 中的 getAndAdd(int i, long delta) 方法。
参考文献