JavaTM 2 Platform
Standard Ed. 5.0

java.util.concurrent.atomic
クラス AtomicInteger

java.lang.Object
  上位を拡張 java.lang.Number
      上位を拡張 java.util.concurrent.atomic.AtomicInteger
すべての実装されたインタフェース:
Serializable

public class AtomicInteger
extends Number
implements Serializable

原子的に更新可能な int 値です。原子変数のプロパティの詳細は、java.util.concurrent.atomic パッケージ仕様を参照してください。AtomicInteger は、原子的に増分されるカウンタなどのアプリケーションで使用されます。これを Integer の代替として使用することはできません。ただし、このクラスは Number を拡張して、数値ベースのクラスを処理するツールやユーティリティによる単一的なアクセスを許可します。

導入されたバージョン:
1.5
関連項目:
直列化された形式

コンストラクタの概要
AtomicInteger()
          初期値 0 を使って、新しい AtomicInteger を作成します。
AtomicInteger(int initialValue)
          指定された初期値を使って、新しい AtomicInteger を作成します。
 
メソッドの概要
 int addAndGet(int delta)
          現在の値に指定された値を、原子的に追加します。
 boolean compareAndSet(int expect, int update)
          「現在の値 == 予想される値」である場合、値を指定された更新値に原子的に設定します。
 int decrementAndGet()
          現在の値を 1 だけ原子的に減分します。
 double doubleValue()
          指定された値を double 型として返します。
 float floatValue()
          指定された数値を float 型として返します。
 int get()
          現在の値を取得します。
 int getAndAdd(int delta)
          現在の値に指定された値を、原子的に追加します。
 int getAndDecrement()
          現在の値を 1 だけ原子的に減分します。
 int getAndIncrement()
          現在の値を 1 だけ原子的に増分します。
 int getAndSet(int newValue)
          指定された値に設定して、以前の値を返します。
 int incrementAndGet()
          現在の値を 1 だけ原子的に増分します。
 int intValue()
          指定された値を int 型として返します。
 long longValue()
          指定された数値を long 型として返します。
 void set(int newValue)
          指定された値に設定します。
 String toString()
          現在値の文字列表記を返します。
 boolean weakCompareAndSet(int expect, int update)
          「現在の値 == 予想される値」である場合、値を指定された更新値に原子的に設定します。
 
クラス java.lang.Number から継承されたメソッド
byteValue, shortValue
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

AtomicInteger

public AtomicInteger(int initialValue)
指定された初期値を使って、新しい AtomicInteger を作成します。

パラメータ:
initialValue - 初期値

AtomicInteger

public AtomicInteger()
初期値 0 を使って、新しい AtomicInteger を作成します。

メソッドの詳細

get

public final int get()
現在の値を取得します。

戻り値:
現在の値

set

public final void set(int newValue)
指定された値に設定します。

パラメータ:
newValue - 新しい値

getAndSet

public final int getAndSet(int newValue)
指定された値に設定して、以前の値を返します。

パラメータ:
newValue - 新しい値
戻り値:
前の値

compareAndSet

public final boolean compareAndSet(int expect,
                                   int update)
「現在の値 == 予想される値」である場合、値を指定された更新値に原子的に設定します。

パラメータ:
expect - 予想される値
update - 新しい値
戻り値:
成功した場合は true。false は、実際の値が予想される値と等価ではないことを示す

weakCompareAndSet

public final boolean weakCompareAndSet(int expect,
                                       int update)
「現在の値 == 予想される値」である場合、値を指定された更新値に原子的に設定します。この操作は、見かけ上失敗する場合があります。

パラメータ:
expect - 予想される値
update - 新しい値
戻り値:
成功した場合は true

getAndIncrement

public final int getAndIncrement()
現在の値を 1 だけ原子的に増分します。

戻り値:
前の値

getAndDecrement

public final int getAndDecrement()
現在の値を 1 だけ原子的に減分します。

戻り値:
前の値

getAndAdd

public final int getAndAdd(int delta)
現在の値に指定された値を、原子的に追加します。

パラメータ:
delta - 追加する値
戻り値:
前の値

incrementAndGet

public final int incrementAndGet()
現在の値を 1 だけ原子的に増分します。

戻り値:
更新された値

decrementAndGet

public final int decrementAndGet()
現在の値を 1 だけ原子的に減分します。

戻り値:
更新された値

addAndGet

public final int addAndGet(int delta)
現在の値に指定された値を、原子的に追加します。

パラメータ:
delta - 追加する値
戻り値:
更新された値

toString

public String toString()
現在値の文字列表記を返します。

オーバーライド:
クラス Object 内の toString
戻り値:
現在値の文字列表記

intValue

public int intValue()
クラス Number の記述:
指定された値を int 型として返します。値を丸めたり切り捨てたりすることもあります。

定義:
クラス Number 内の intValue
戻り値:
このオブジェクトが表す数値を int 型に変換した値

longValue

public long longValue()
クラス Number の記述:
指定された数値を long 型として返します。値を丸めたり切り捨てたりすることもあります。

定義:
クラス Number 内の longValue
戻り値:
このオブジェクトが表す数値を long 型に変換した値

floatValue

public float floatValue()
クラス Number の記述:
指定された数値を float 型として返します。値を丸めることもあります。

定義:
クラス Number 内の floatValue
戻り値:
このオブジェクトが表す数値を float 型に変換した値

doubleValue

public double doubleValue()
クラス Number の記述:
指定された値を double 型として返します。値を丸めることもあります。

定義:
クラス Number 内の doubleValue
戻り値:
このオブジェクトが表す数値を double 型に変換した値

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。