Docs Menu
Docs Home
/ /
io.realm

Clase RealmAny

java.lang.Object
io.realm.RealmAny

io.realm.RealmAny se utiliza para representar un valor de Realm polimórfico.

En cualquier momento, una instancia de esta clase almacena un valor definido de un tipo definido. Si, por ejemplo, se trata de un valor doble, se puede llamar a asDouble() para extraerlo. Se puede llamar a getType() para descubrir qué tipo de valor está almacenado. Llamar a asDouble() en una instancia que no almacena un valor doble generaría una excepción java.lang.ClassCastException.

RealmAny se comporta como un tipo de valor en todos los tipos admitidos, excepto en los objetos Realm. Esto significa que Realm no conservará ningún cambio en el valor de RealmAny, excepto cuando el tipo sea un objeto Realm. Cuando un RealmAny contiene un objeto Realm, solo contiene la referencia a este, no una copia del objeto. Por lo tanto, las modificaciones del objeto Realm se reflejan en el valor de RealmAny, incluso si el objeto se elimina. Dado que las instancias de RealmAny son inmutables, se necesita una nueva instancia para actualizar un atributo de RealmAny.

anObject.realmAnyAttribute = RealmAny.valueOf(5);
anObject.realmAnyAttribute = RealmAny.valueOf(10.f);

Es fundamental comprender que extraer un valor de un tipo específico requiere un conocimiento preciso del tipo almacenado. Llamar a un método getter para cualquier tipo específico que no sea el mismo que el valor almacenado generaría una excepción. Nuestra recomendación para gestionar el polimorfismo RealmAny es crear un caso de conmutación para el tipo RealmAny y su clase de valor interna.

RealmAny realmAny = aRealmObject.realmAnyAttribute;
switch (realmAny.getType()) {
case OBJECT:
if (realmAny.getValueClass().equals(DogRealmModel.class)) {
DogRealmModel value = realmAny.asRealmModel(DogRealmModel.class);
}
case INTEGER:
performAction(realmAny.asInteger());
break;
case BOOLEAN:
performAction(realmAny.asBoolean());
break;
case STRING:
performAction(realmAny.asString());
break;
case BINARY:
performAction(realmAny.asBinary());
break;
case DATE:
performAction(realmAny.asDate());
break;
case FLOAT:
performAction(realmAny.asFloat());
break;
case DOUBLE:
performAction(realmAny.asDouble());
break;
case DECIMAL128:
performAction(realmAny.asDecimal128());
break;
case OBJECT_ID:
performAction(realmAny.asObjectId());
break;
case UUID:
performAction(realmAny.asUUID());
break;
case NULL:
performNullAction();
break;
}

getValueClass() devuelve la clase Java que representa el valor interno encapsulado por la instancia de RealmAny. Si la clase resultante es una implementación de io.realm.RealmModel, se puede llamar a asRealmModel() para convertir el valor de RealmAny a una referencia de objeto Realm.

Los valores de RealmAny también se pueden ordenar. El orden de clasificación utilizado entre los diferentes tipos de RealmAny, de menor a mayor, es:

  1. Booleano

  2. Byte/Corto/Entero/Largo/Flotante/Doble/Decimal128

  3. byte[]/String

  4. fecha

  5. ObjectId

  6. UUID

  7. Objeto de reino

Esto tiene implicaciones en el funcionamiento de RealmQuery.sort(String), RealmQuery.minRealmAny(String) y RealmQuery.maxRealmAny(String). Especialmente min() y max() no solo tendrá en cuenta los campos numéricos, sino que utilizará el orden de clasificación para determinar el valor "más grande" o "más bajo".

Modificador y Tipo
Clase y descripción

public static final

Modificador y Tipo
Método y descripción

public byte

Obtiene este valor como un byte[] si es uno, de lo contrario arroja una excepción.

booleanopúblico

Obtiene este valor como booleano si es uno, de lo contrario lanza una excepción.

Bytepúblico

Obtiene este valor como un Byte si lo es; de lo contrario, lanza una excepción.

Obtiene este valor como una fecha si es una, de lo contrario lanza una excepción.

Decimal128público

Obtiene este valor como un Decimal128 si lo es, de lo contrario lanza una excepción.

public Double

Obtiene este valor como Doble si es uno, de lo contrario lanza una excepción.

Flotadorpúblico

Obtiene este valor como un flotante si es uno, de lo contrario lanza una excepción.

Obtiene este valor como un entero si es uno, de lo contrario lanza una excepción.

público largo

Obtiene este valor como Long si es uno, de lo contrario lanza una excepción.

ObjectIdpúblico

Obtiene este valor como ObjectId si es uno, de lo contrario arroja una excepción.

public T

Obtiene este valor como RealmModel si es uno, de lo contrario lanza una excepción.

público Corto

Obtiene este valor como Short si es uno, de lo contrario lanza una excepción.

Obtiene este valor como una cadena si es uno, de lo contrario arroja una excepción.

UUIDpúblico

Obtiene este valor como un UUID si es uno, de lo contrario lanza una excepción.

booleanofinal público

booleanofinal público

Object other
)

Dos RealmAny son .equals si y sólo si sus contenidos son iguales.

público RealmAny.Type

Obtiene el tipo interno de este objeto RealmAny.

Devuelve la clase Java que representa el valor interno envuelto por este valor RealmAny.

int final público

El código hash de un RealmAny es, exactamente, el código hash de su valor.

booleanopúblico

Devuelve verdadero si el valor interno es nulo, falso en caso contrario.

Crea un nuevo RealmAny con un valor nulo.

Decimal128 value
)

Crea un nuevo RealmAny con el valor especificado.

ObjectId value
)

Crea un nuevo RealmAny con el valor especificado.

Date value
)

Crea un nuevo RealmAny con el valor especificado.

byte[] value
)

Crea un nuevo RealmAny con el valor especificado.

String value
)

Crea un nuevo RealmAny con el valor especificado.

Double value
)

Crea un nuevo RealmAny con el valor especificado.

Float value
)

Crea un nuevo RealmAny con el valor especificado.

Crea un nuevo RealmAny con el valor especificado.

Long value
)

Crea un nuevo RealmAny con el valor especificado.

Crea un nuevo RealmAny con el valor especificado.

Short value
)

Crea un nuevo RealmAny con el valor especificado.

Byte value
)

Crea un nuevo RealmAny con el valor especificado.

  • Métodos heredados de la clase getClasshashCodeequalsclonetoStringnotifynotifyAllwaitwaitwaitjava.lang.Object:,,,,,,,,,, finalize

public byte asBinary ()

Obtiene este valor como un byte[] si es uno, de lo contrario arroja una excepción.

Devuelve

a byte[].

Lanzamientos

public Boolean asBoolean ()

Obtiene este valor como booleano si es uno, de lo contrario lanza una excepción.

Devuelve

un booleano.

Lanzamientos

public Byte asByte ()

Obtiene este valor como un Byte si lo es; de lo contrario, lanza una excepción.

Devuelve

a Byte.

Lanzamientos

public Date asDate ()

Obtiene este valor como una fecha si es una, de lo contrario lanza una excepción.

Devuelve

una cita.

Lanzamientos

public Decimal128 asDecimal128 ()

Obtiene este valor como un Decimal128 si lo es, de lo contrario lanza una excepción.

Devuelve

un decimal128.

Lanzamientos

public Double asDouble ()

Obtiene este valor como Doble si es uno, de lo contrario lanza una excepción.

Devuelve

un Doble.

Lanzamientos

public Float asFloat ()

Obtiene este valor como un flotante si es uno, de lo contrario lanza una excepción.

Devuelve

un flotador.

Lanzamientos

public Integer asInteger ()

Obtiene este valor como un entero si es uno, de lo contrario lanza una excepción.

Devuelve

un entero.

Lanzamientos

public Long asLong ()

Obtiene este valor como Long si es uno, de lo contrario lanza una excepción.

Devuelve

a Long.

Lanzamientos

public ObjectId asObjectId ()

Obtiene este valor como ObjectId si es uno, de lo contrario arroja una excepción.

Devuelve

an ObjectId.

Lanzamientos

public T asRealmModel <T >(
)

Obtiene este valor como RealmModel si es uno, de lo contrario lanza una excepción.

Parámetros de tipo

  • T - el tipo RealmModel al que se convertirá el valor interno.

Devuelve

un RealmModel del tipo T.

Lanzamientos

public Short asShort ()

Obtiene este valor como Short si es uno, de lo contrario lanza una excepción.

Devuelve

Un corto.

Lanzamientos

public String asString ()

Obtiene este valor como una cadena si es uno, de lo contrario arroja una excepción.

Devuelve

una cadena.

Lanzamientos

public UUID asUUID ()

Obtiene este valor como un UUID si es uno, de lo contrario lanza una excepción.

Devuelve

un UUID.

Lanzamientos

public final boolean coercedEquals (
RealmAny other
)
public final boolean equals (
Object other
)

Dos RealmAny son .equals si y sólo si sus contenidos son iguales.

Parámetros

  • other - comparar objetivo

Devuelve

verdadero si el objetivo tiene el mismo valor

Anulaciones

equals en la clase Objeto

Obtiene el tipo interno de este objeto RealmAny.

Devuelve

el RealmAny.Type interior

Devuelve la clase Java que representa el valor interno envuelto por este valor RealmAny.

Devuelve

la clase que representa el valor interno envuelto por este valor RealmAny.

public final int hashCode ()

El código hash de un RealmAny es, exactamente, el código hash de su valor.

Devuelve

verdadero si el objetivo tiene el mismo valor

Lanzamientos

Anulaciones

hashCode en la clase Objeto

public boolean isNull ()

Devuelve verdadero si el valor interno es nulo, falso en caso contrario.

Devuelve

Verdadero si el valor interno es nulo, falso en caso contrario.

public static RealmAny nullValue ()

Crea un nuevo RealmAny con un valor nulo.

Devuelve

una nueva instancia de RealmAny de un valor nulo.

public String toString ()

Anulaciones

toString en la clase Objeto

public static RealmAny valueOf (
Decimal128 value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.DECIMAL;128 en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo ReinoCualquiera de un decimal128.

public static RealmAny valueOf (
ObjectId value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.OBJECT_ID; en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo RealmAny de un ObjectId.

public static RealmAny valueOf (
Date value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.DATE; en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo ReinoCualquiera de una Fecha.

public static RealmAny valueOf (
byte[] value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.BINARY; en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo ReinoCualquiera de un byte[].

public static RealmAny valueOf (
String value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.STRING; en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo ReinoCualquiera de una cadena.

public static RealmAny valueOf (
Double value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.DOUBLE;en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo ReinoCualquiera de un Doble.

public static RealmAny valueOf (
Float value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.FLOAT;en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo ReinoCualquiera de un Flotador.

public static RealmAny valueOf (
Boolean value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.BOOLEAN;en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo reinoCualquiera de un valor booleano.

public static RealmAny valueOf (
Long value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.INTEGER; en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo reinoCualquiera de un largo.

public static RealmAny valueOf (
Integer value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.INTEGER; en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo ReinoCualquiera de un entero.

public static RealmAny valueOf (
Short value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.INTEGER; en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo reinoCualquiera de un corto.

public static RealmAny valueOf (
Byte value
)

Crea un nuevo RealmAny con el valor especificado. Si el valor no es nulo, el tipo será RealmAny.Type.INTEGER; en caso contrario, RealmAny.Type.NULL.

Parámetros

  • value - el valor de RealmAny.

Devuelve

un nuevo RealmAny que contiene un valor Byte.

Volver

Reino.Transacción.EnCasoDeÉxito

En esta página