クラス MutableRealmInteger
- java.lang.Object
-
- io.realm.MutableRealmInteger
-
- すべての実装インターフェース:
io.realm.internal.ManageableObject
,Comparable<MutableRealmInteger>
public abstract class MutableRealmInteger extends Object implements Comparable<MutableRealmInteger>, io.realm.internal.ManageableObject
MutableRealmInteger
は、可変で、Long
のような数値量です。 この値はほぼ正確にLong
への参照として動作します。 具体的には、次のとおりです。MutableRealmInteger
には値null
が含まれる場合があります。equals(java.lang.Object)
演算子は、含まれるLong
値を比較します。null
の値MutableRealmInteger
は.equals
compareTo(io.realm.MutableRealmInteger)
演算子は、含まれるLong
値を比較します。null
はnull
以外の値より小さいと見なされます。increment(long)
演算子とdecrement(long)
演算子は、null
値のMutableRealmInteger
に適用するとIllegalStateException
をスローします。
MutableRealmInteger
は、管理対象のRealmModel
オブジェクトのメンバーとして最も重要です。 管理する場合、increment(long)
演算子とdecrement(long)
演算子は競合のない複製データ型を実装します。複数の分散クライアントからの同時増加と減少が正しく集計されます。 たとえば、ユーザー「Fred」を表すオブジェクトのcounter
フィールドの値が現在 0 の場合、次のコードは 2 つの異なるデバイスで同時に実行されると、遅くて信頼できないネットワークのみに接続している場合でも、常にcounter
の値を変換し、最終的には値 2 に変換されます。MutableRealmInteger counter = realm.where(Users.class) .equalTo("name", Fred) .findFirst() .counter.increment(1);
set(Long)
演算子は細心の注意で使用する必要があることに注意してください。 これにより、increment(long)
またはdecrement(long)
に対する以前の呼び出しの効果が消去されます。MutableRealmInteger
の値は常にデバイス間で変換されますが、変換される具体的な値は、操作が行われた実際の順序によって異なります。 したがって、ファジーカウントが受け入れられない限り、set(Long)
をincrement(long)
およびdecrement(long)
と混在させることは推奨されません。MutableRealmInteger
はプライマリキーでなくてはなりません。 実装はスレッドセーフではありません。 すべての管理対象 Realm オブジェクトと同様に、管理対象のMutableRealmInteger
はスレッド間で移動できません。 管理されていないMutableRealmInteger
はスレッド間で移動できますが、安全な公開が必要です。モデル クラス内の
MutableRealmInteger
は、常にfinal
と宣言する必要があります。 例:public final MutableRealmInteger counter = MutableRealmInteger.ofNull();
MutableRealmInteger
をnull
として初期化すると、非常に限定的な状況で機能する可能性がありますが、開発者はこれを行わ ない ことをお勧めします。public final MutableRealmInteger counter = null; // DO NOT DO THIS!
MutableRealmInteger
が@Required
の場合は、null 以外の値で初期化する方がよいが、必須ではないことにも注意してください。@Required public final MutableRealmInteger counter = MutableRealmInteger.valueOf(0L);
管理対象の
MutableRealmInteger
への参照は、取得元のモデル オブジェクトに適用されるすべての制約の対象となります。トランザクション内でのみミューテーションが可能で、それをサポートする Realm が閉じられている場合は無効になります。isManaged()
isValid()
演算子と 演算子を使用して、MutableRealmInteger
が一貫した状態であるかどうかを判断します。特に、管理対象のMutableRealmInteger
への参照は、それが属するモデル オブジェクトへの参照を保持していることに注意してください。 たとえば、このコードでは次のようになります。MutableRealmInteger counter = realm.where(Users.class).findFirst().counter;
counter
は、取得元となったUser
モデル オブジェクトへの参照を保持します。 両方へのすべての参照が到達できなくなるまで、どちらも Ged することはできません。
-
-
メソッドの概要
すべてのメソッド 静的メソッド インスタンス メソッド 抽象メソッド 具象メソッド 修飾子と型 方式 説明 int
compareTo(MutableRealmInteger o)
MutableRealmInteger
は、 の値によって厳密に比較されます。abstract void
decrement(long dec)
MutableRealmInteger
から を減算し、 引数の値を減算します。boolean
equals(Object o)
2 つのMutableRealmInteger
は、longValues
が等しい場合にのみ.equals
になります。abstract Long
get()
MutableRealmInteger
値を取得します。int
hashCode()
MutableRealmInteger
のハッシュ コードは、正確にその値のハッシュ コードです。abstract void
increment(long inc)
MutableRealmInteger
を増加させ、 引数の値を追加します。boolean
isNull()
static MutableRealmInteger
ofNull()
値がnull
である、新しい管理されていないMutableRealmInteger
を作成します。void
set(long newValue)
MutableRealmInteger
値を設定します。abstract void
set(Long newValue)
MutableRealmInteger
値を設定します。static MutableRealmInteger
valueOf(long value)
指定された初期値を持つ新しい管理されていないMutableRealmInteger
を作成します。static MutableRealmInteger
valueOf(Long value)
指定された初期値を持つ新しい管理されていないMutableRealmInteger
を作成します。static MutableRealmInteger
valueOf(String value)
指定された初期値を持つ新しい管理されていないMutableRealmInteger
を作成します。
-
-
-
メソッドの詳細
-
valueOf
public static MutableRealmInteger valueOf(Long value)
指定された初期値を持つ新しい管理されていないMutableRealmInteger
を作成します。- パラメーター:
value
- 初期値。
-
ofNull
public static MutableRealmInteger ofNull()
値がnull
である、新しい管理されていないMutableRealmInteger
を作成します。
-
valueOf
public static MutableRealmInteger valueOf(long value)
指定された初期値を持つ新しい管理されていないMutableRealmInteger
を作成します。- パラメーター:
value
- 初期値。
-
valueOf
public static MutableRealmInteger valueOf(String value)
指定された初期値を持つ新しい管理されていないMutableRealmInteger
を作成します。- パラメーター:
value
- 初期値:Long.parseLong(java.lang.String, int)
によって解析されます。
-
得る
@Nullable public abstract Long get()
MutableRealmInteger
値を取得します。 値は null にすることができます。- 次の値を返します。
- 値。
-
セット
public abstract void set(@Nullable Long newValue)
MutableRealmInteger
値を設定します。set
を呼び出すと、MutableRealmInteger
が指定された値に強制的に設定されます。 こうすると、set
の呼び出しの前に認識されたincrement(long)
とdecrement(long)
への呼び出しの効果が無効になります。- パラメーター:
newValue
- 新しい値。
-
セット
public final void set(long newValue)
MutableRealmInteger
値を設定します。set(java.lang.Long)
を呼び出すと、MutableRealmInteger
が指定された値に強制的に設定されます。increment(long)
decrement(long)
こうすると、set(java.lang.Long)
の呼び出しの前に認識された と への呼び出しの効果が無効になります。- パラメーター:
newValue
- 新しい値。
-
増分
public abstract void increment(long inc)
MutableRealmInteger
を増加させ、 引数の値を追加します。 すべてのデバイスからの増加または減少は新しい 値に反映され、変換されることが保証されます。- パラメーター:
inc
-MutableRealmInteger
に追加する量。
-
減算
public abstract void decrement(long dec)
MutableRealmInteger
から を減算し、 引数の値を減算します。 すべてのデバイスからの増加または減少は新しい 値に反映され、変換されることが保証されます。- パラメーター:
dec
-MutableRealmInteger
から差し引かれる量。
-
isNull
public final boolean isNull()
- 次の値を返します。
- true の場合で、かつ
get()
がnull
を返す場合にのみ true 。
-
compactTo
public final int compareTo(MutableRealmInteger o)
MutableRealmInteger
は、 の値によって厳密に比較されます。 null はMutableRealmInteger
およびnull
<null
以外の値の正規値です- 次のによって指定されます。
compareTo
内 インターフェースComparable<MutableRealmInteger>
- パラメーター:
o
- 比較ターゲット- 次の値を返します。
- -1、0、または 1 のいずれかになります。
-
ハッシュコード
public final int hashCode()
MutableRealmInteger
のハッシュ コードは、正確にその値のハッシュ コードです。
-
-