天天看点

JavaAPI之AtomicLong结构描述构造方法 方法详细

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)、QQ技术交流群(183198395)。

JavaAPI之AtomicLong结构描述构造方法 方法详细
JavaAPI之AtomicLong结构描述构造方法 方法详细
JavaAPI之AtomicLong结构描述构造方法 方法详细

结构

java.util.concurrent.atomic

类 AtomicLong

java.lang.Object
  java.lang.Number
      java.util.concurrent.atomic.AtomicLong
           

所有已实现的接口:

Serializable

public class AtomicLong  extends Number  implements Serializable
           

描述

可以用原子方式更新的

long

值。有关原子变量属性的描述,请参阅

java.util.concurrent.atomic

包规范。

AtomicLong

可用在应用程序中(如以原子方式增加的序列号),并且不能用于替换

Long

。但是,此类确实扩展了

Number

,允许那些处理基于数字类的工具和实用工具进行统一访问。

从以下版本开始:

1.5

另请参见:

序列化表格

构造方法

1、public AtomicLong(long initialValue)  创建具有给定初始值的新 AtomicLong。

参数:

initialValue

- 初始值

2、public AtomicLong()  创建具有初始值

的新 AtomicLong。

方法详细

1、public final long get()  获取当前值。

返回:当前值

2、public final void set(long newValue)  设置为给定值。

参数:

newValue

- 新值

3、public final void lazySet(long newValue)  最后设置为给定值。

参数:

newValue

- 新值

从以下版本开始:1.6 

4、public final long getAndSet(long newValue)   以原子方式设置为给定值,并返回旧值。

参数:

newValue

- 新值

返回:以前的值

5、public final boolean compareAndSet(long expect, long update)    如果当前值

==

预期值,则以原子方式将该值设置为给定的更新值。

参数:

expect

- 预期值   

update

- 新值

返回:如果成功,则返回 true。返回 false 指示实际值与预期值不相等

6、public final boolean weakCompareAndSet(long expect,long update)

如果当前值

==

预期值,则以原子方式将该值设置为给定的更新值。可能意外失败并且不提供排序保证,所以只能在很少的情况下对

compareAndSet

进行适当地选择。

参数:

expect

- 预期值   

update

- 新值

返回:如果成功,则返回 true。

7、public final long getAndIncrement()  以原子方式将当前值加 1。

返回:以前的值

8、public final long getAndDecrement()  以原子方式将当前值减 1。

返回:以前的值

9、public final long getAndAdd(long delta)   以原子方式将给定值添加到当前值。

参数:

delta

- 要添加的值

返回:以前的值

10、public final long incrementAndGet()   以原子方式将当前值加 1。

返回:更新的值

11、public final long decrementAndGet()   以原子方式将当前值减 1。

返回:更新的值

12、public final long addAndGet(long delta)  以原子方式将给定值添加到当前值。

参数:

delta

- 要添加的值

返回:更新的值

13、public String toString()   返回当前值的字符串表示形式。

覆盖:类

Object

中的

toString

返回:当前值的字符串表示形式。

14、public int intValue()

从类

Number

复制的描述

int

形式返回指定的数值。这可能会涉及到舍入或取整。

指定者:类

Number

中的

intValue

返回:转换为

int

类型后该对象表示的数值。

15、public long longValue()

从类

Number

复制的描述

long

形式返回指定的数值。这可能涉及到舍入或取整。

指定者:类

Number

中的

longValue

返回:转换为

long

类型后该对象表示的数值。

16、public float floatValue()

从类

Number

复制的描述

float

形式返回指定的数值。这可能会涉及到舍入。

指定者:类

Number

中的

floatValue

返回:转换为

float

类型后该对象表示的数值。

17、public double doubleValue()

从类

Number

复制的描述

double

形式返回指定的数值。这可能会涉及到舍入。

指定者:类

Number

中的

doubleValue

返回:转换为

double

类型后该对象表示的数值。

继续阅读