Most visited

Recently visited

Added in API level 1

AtomicInteger

public class AtomicInteger
extends Number implements Serializable

java.lang.Object
   ↳ java.lang.Number
     ↳ java.util.concurrent.atomic.AtomicInteger


可以自动更新的int值。 有关原子变量属性的说明,请参阅java.util.concurrent.atomic包规范。 AtomicInteger用于原子增量计数器等应用程序,不能用作Integer的替代品。 但是,该类确实扩展了Number以允许使用基于数字的类的工具和实用程序进行统一访问。

Summary

Public constructors

AtomicInteger(int initialValue)

用给定的初始值创建一个新的AtomicInteger。

AtomicInteger()

创建一个初始值为 0的新AtomicInteger。

Public methods

final int accumulateAndGet(int x, IntBinaryOperator accumulatorFunction)

将给定函数应用于当前值和给定值的结果以原子方式更新当前值,并返回更新后的值。

final int addAndGet(int delta)

原子上将给定值添加到当前值。

final boolean compareAndSet(int expect, int update)

如果当前值 ==为期望值,则将该值 ==原子级设置为给定的更新值。

final int decrementAndGet()

原子减少一个当前值。

double doubleValue()

返回此值 AtomicIntegerdouble一个宽元转换后。

float floatValue()

返回此值 AtomicIntegerfloat一个宽元转换后。

final int get()

获取当前值。

final int getAndAccumulate(int x, IntBinaryOperator accumulatorFunction)

将给定函数应用于当前值和给定值的结果以原始方式更新当前值,并返回以前的值。

final int getAndAdd(int delta)

原子上将给定值添加到当前值。

final int getAndDecrement()

原子减少一个当前值。

final int getAndIncrement()

原子上增加一个当前值。

final int getAndSet(int newValue)

原子级设置为给定值并返回旧值。

final int getAndUpdate(IntUnaryOperator updateFunction)

用应用给定函数的结果原子地更新当前值,返回以前的值。

final int incrementAndGet()

原子上增加一个当前值。

int intValue()

返回此值 AtomicIntegerint

final void lazySet(int newValue)

最终设置为给定值。

long longValue()

返回此值 AtomicIntegerlong一个宽元转换后。

final void set(int newValue)

设置为给定值。

String toString()

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

final int updateAndGet(IntUnaryOperator updateFunction)

使用给定函数的结果原子地更新当前值,并返回更新的值。

final boolean weakCompareAndSet(int expect, int update)

如果当前值 ==为预期值, ==原子值将该值设置为给定的更新值。

Inherited methods

From class java.lang.Number
From class java.lang.Object

Public constructors

AtomicInteger

Added in API level 1
AtomicInteger (int initialValue)

用给定的初始值创建一个新的AtomicInteger。

Parameters
initialValue int: the initial value

AtomicInteger

Added in API level 1
AtomicInteger ()

创建一个初始值为 0的新AtomicInteger。

Public methods

accumulateAndGet

Added in API level 24
int accumulateAndGet (int x, 
                IntBinaryOperator accumulatorFunction)

将给定函数应用于当前值和给定值的结果以原子方式更新当前值,并返回更新后的值。 该函数应该是无副作用的,因为当尝试更新由于线程之间的争用而失败时,它可能会被重新应用。 该函数以当前值作为第一个参数,给定更新作为第二个参数应用。

Parameters
x int: the update value
accumulatorFunction IntBinaryOperator: a side-effect-free function of two arguments
Returns
int the updated value

addAndGet

Added in API level 1
int addAndGet (int delta)

原子上将给定值添加到当前值。

Parameters
delta int: the value to add
Returns
int the updated value

compareAndSet

Added in API level 1
boolean compareAndSet (int expect, 
                int update)

如果当前值 ==为预期值, ==原子级将该值设置为给定的更新值。

Parameters
expect int: the expected value
update int: the new value
Returns
boolean true if successful. False return indicates that the actual value was not equal to the expected value.

decrementAndGet

Added in API level 1
int decrementAndGet ()

原子减少一个当前值。

Returns
int the updated value

doubleValue

Added in API level 1
double doubleValue ()

返回此值 AtomicIntegerdouble一个宽元转换后。

Returns
double the numeric value represented by this object after conversion to type double.

floatValue

Added in API level 1
float floatValue ()

返回此值 AtomicIntegerfloat一个宽元转换后。

Returns
float the numeric value represented by this object after conversion to type float.

get

Added in API level 1
int get ()

获取当前值。

Returns
int the current value

getAndAccumulate

Added in API level 24
int getAndAccumulate (int x, 
                IntBinaryOperator accumulatorFunction)

将给定函数应用于当前值和给定值的结果以原始方式更新当前值,并返回以前的值。 该函数应该是无副作用的,因为当尝试更新由于线程之间的争用而失败时,它可能会被重新应用。 该函数以当前值作为第一个参数,给定更新作为第二个参数应用。

Parameters
x int: the update value
accumulatorFunction IntBinaryOperator: a side-effect-free function of two arguments
Returns
int the previous value

getAndAdd

Added in API level 1
int getAndAdd (int delta)

原子上将给定值添加到当前值。

Parameters
delta int: the value to add
Returns
int the previous value

getAndDecrement

Added in API level 1
int getAndDecrement ()

原子减少一个当前值。

Returns
int the previous value

getAndIncrement

Added in API level 1
int getAndIncrement ()

原子上增加一个当前值。

Returns
int the previous value

getAndSet

Added in API level 1
int getAndSet (int newValue)

原子级设置为给定值并返回旧值。

Parameters
newValue int: the new value
Returns
int the previous value

getAndUpdate

Added in API level 24
int getAndUpdate (IntUnaryOperator updateFunction)

用应用给定函数的结果原子地更新当前值,返回以前的值。 该函数应该是无副作用的,因为当尝试更新由于线程之间的争用而失败时,它可能会被重新应用。

Parameters
updateFunction IntUnaryOperator: a side-effect-free function
Returns
int the previous value

incrementAndGet

Added in API level 1
int incrementAndGet ()

原子上增加一个当前值。

Returns
int the updated value

intValue

Added in API level 1
int intValue ()

返回此值AtomicIntegerint 相当于get()

Returns
int the numeric value represented by this object after conversion to type int.

lazySet

Added in API level 9
void lazySet (int newValue)

最终设置为给定值。

Parameters
newValue int: the new value

longValue

Added in API level 1
long longValue ()

返回此值 AtomicIntegerlong一个宽元转换后。

Returns
long the numeric value represented by this object after conversion to type long.

set

Added in API level 1
void set (int newValue)

设置为给定值。

Parameters
newValue int: the new value

toString

Added in API level 1
String toString ()

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

Returns
String the String representation of the current value

updateAndGet

Added in API level 24
int updateAndGet (IntUnaryOperator updateFunction)

使用给定函数的结果原子地更新当前值,并返回更新的值。 该函数应该是无副作用的,因为当尝试更新由于线程之间的争用而失败时,它可能会被重新应用。

Parameters
updateFunction IntUnaryOperator: a side-effect-free function
Returns
int the updated value

weakCompareAndSet

Added in API level 1
boolean weakCompareAndSet (int expect, 
                int update)

如果当前值 ==为预期值, ==原子值将该值设置为给定的更新值。

May fail spuriously and does not provide ordering guarantees ,所以只有很少的 compareAndSet替代选择。

Parameters
expect int: the expected value
update int: the new value
Returns
boolean true if successful

Hooray!