RealmQuery<E> 类
- java.lang.Object
-
- io.realm.RealmQuery<E>
-
- 类型参数:
E
- 要查询的对象的类。
public class RealmQuery<E> extends Object
RealmQuery 使用构建器模式封装对Realm
或RealmResults
的查询。 使用findAll()
或findFirst()
执行查询。许多查询函数的输入将字段名称视为字符串。请注意,这不是类型安全的。 如果对 RealmObject 类进行重构,则必须注意不要破坏任何查询。
Realm
是无序的,这意味着不能保证查询 Realm 会按对象插入的顺序返回对象。 如果需要特定顺序,请使用sort(String)
(字符串)} 和类似方法。RealmQuery 不能在不同线程之间传递。
大多数时候都能很快得到结果。 但是,从用户界面线程启动大量查询可能会导致丢帧甚至 ANR。 如果要防止这些行为,可以使用将 显式设置为 的 来实例化 Realm。
RealmConfiguration
RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
false
这样,查询将被迫从非用户界面线程启动。 或者,也可以使用findAllAsync()
或findFirstAsync()
。- 另请参阅:
- 构建者模式、
Realm.where(Class)
、RealmResults.where()
-
-
方法摘要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 RealmQuery<E>
alwaysFalse()
此谓词永远不会匹配,导致查询始终返回 0 个结果。RealmQuery<E>
alwaysTrue()
该谓词将始终匹配。RealmQuery<E>
and()
逻辑与两个条件 Realm 会自动在所有声明之间应用逻辑与,因此这只是为了提高可读性的平均值。double
average(String fieldName)
返回给定字段的平均值。Decimal128
averageDecimal128(String fieldName)
返回给定字段的平均值。Decimal128
averageRealmAny(String fieldName)
返回给定字段的平均值。RealmQuery<E>
beginGroup()
开始对条件进行分组(“左括号”)。RealmQuery<E>
beginsWith(String fieldName, RealmAny value)
条件是字段的值以指定字符串开头。RealmQuery<E>
beginsWith(String fieldName, RealmAny value, Case casing)
条件是字段的值以指定子字符串开头。RealmQuery<E>
beginsWith(String fieldName, String value)
条件是字段的值以指定字符串开头。RealmQuery<E>
beginsWith(String fieldName, String value, Case casing)
条件是字段的值以指定子字符串开头。RealmQuery<E>
between(String fieldName, double from, double to)
介于条件之间。RealmQuery<E>
between(String fieldName, float from, float to)
介于条件之间。RealmQuery<E>
between(String fieldName, int from, int to)
介于条件之间。RealmQuery<E>
between(String fieldName, long from, long to)
介于条件之间。RealmQuery<E>
between(String fieldName, RealmAny from, RealmAny to)
介于条件之间。RealmQuery<E>
between(String fieldName, Date from, Date to)
介于条件之间。RealmQuery<E>
between(String fieldName, Decimal128 from, Decimal128 to)
介于条件之间。RealmQuery<E>
contains(String fieldName, RealmAny value)
条件是字段值包含指定的子字符串。RealmQuery<E>
contains(String fieldName, RealmAny value, Case casing)
条件是字段值包含指定的子字符串。RealmQuery<E>
contains(String fieldName, String value)
条件是字段值包含指定的子字符串。RealmQuery<E>
contains(String fieldName, String value, Case casing)
条件是字段值包含指定的子字符串。RealmQuery<E>
containsEntry(String fieldName, Map.Entry<String,?> entry)
条件是该值(如果是字典字段)包含指定的条目。RealmQuery<E>
containsKey(String fieldName, String key)
条件是该值(如果是字典字段)包含指定的键。RealmQuery<E>
containsValue(String fieldName, byte[] value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, RealmAny value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, RealmModel value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Boolean value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Byte value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Double value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Float value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Integer value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Long value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Short value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, String value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Date value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, UUID value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, Decimal128 value)
如果该值是字段,则条件包含指定值。RealmQuery<E>
containsValue(String fieldName, ObjectId value)
如果该值是字段,则条件包含指定值。long
count()
统计满足查询条件的对象数量。RealmQuery<E>
distinct(String firstFieldName, String... remainingFieldNames)
选择特定类的一组不同对象。RealmQuery<E>
endGroup()
结束通过调用beginGroup()
打开的条件分组(“右括号”)。RealmQuery<E>
endsWith(String fieldName, RealmAny value)
条件是字段的值以指定字符串结尾。RealmQuery<E>
endsWith(String fieldName, RealmAny value, Case casing)
条件是字段的值以指定子字符串结尾。RealmQuery<E>
endsWith(String fieldName, String value)
条件是字段的值以指定字符串结尾。RealmQuery<E>
endsWith(String fieldName, String value, Case casing)
条件是字段的值以指定子字符串结尾。RealmQuery<E>
equalTo(String fieldName, byte[] value)
等于比较。RealmQuery<E>
equalTo(String fieldName, RealmAny value)
等于比较。RealmQuery<E>
equalTo(String fieldName, RealmAny value, Case casing)
等于比较。RealmQuery<E>
equalTo(String fieldName, Boolean value)
等于比较。RealmQuery<E>
equalTo(String fieldName, Byte value)
等于比较。RealmQuery<E>
equalTo(String fieldName, Double value)
等于比较。RealmQuery<E>
equalTo(String fieldName, Float value)
等于比较。RealmQuery<E>
equalTo(String fieldName, Integer value)
等于比较。RealmQuery<E>
equalTo(String fieldName, Long value)
等于比较。RealmQuery<E>
equalTo(String fieldName, Short value)
等于比较。RealmQuery<E>
equalTo(String fieldName, String value)
等于比较。RealmQuery<E>
equalTo(String fieldName, String value, Case casing)
等于比较。RealmQuery<E>
equalTo(String fieldName, Date value)
等于比较。RealmQuery<E>
equalTo(String fieldName, UUID value)
等于比较。RealmQuery<E>
equalTo(String fieldName, Decimal128 value)
等于比较。RealmQuery<E>
equalTo(String fieldName, ObjectId value)
等于比较。RealmResults<E>
findAll()
查找所有满足查询条件的对象。RealmResults<E>
findAllAsync()
查找所有满足查询条件的对象。E
findFirst()
查找第一个满足查询条件的对象。E
findFirstAsync()
与findFirst()
类似,但在工作线程上异步运行。String
getDescription()
返回此查询的文本描述。long
getQueryPointer()
返回指向底层 C++ 查询的指针。Realm
getRealm()
返回此查询所属的Realm
实例。String
getTypeQueried()
返回正在查询的类型的内部 Realm 名称。RealmQuery<E>
greaterThan(String fieldName, double value)
大于比较。RealmQuery<E>
greaterThan(String fieldName, float value)
大于比较。RealmQuery<E>
greaterThan(String fieldName, int value)
大于比较。RealmQuery<E>
greaterThan(String fieldName, long value)
大于比较。RealmQuery<E>
greaterThan(String fieldName, RealmAny value)
大于比较。RealmQuery<E>
greaterThan(String fieldName, Date value)
大于比较。RealmQuery<E>
greaterThan(String fieldName, UUID value)
大于比较。RealmQuery<E>
greaterThan(String fieldName, Decimal128 value)
大于比较。RealmQuery<E>
greaterThan(String fieldName, ObjectId value)
大于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, double value)
大于或等于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, float value)
大于或等于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, int value)
大于或等于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, long value)
大于或等于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, RealmAny value)
大于或等于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, Date value)
大于或等于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, UUID value)
大于或等于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, Decimal128 value)
大于或等于比较。RealmQuery<E>
greaterThanOrEqualTo(String fieldName, ObjectId value)
大于或等于比较。RealmQuery<E>
in(String fieldName, RealmAny[] values)
相比之下。RealmQuery<E>
in(String fieldName, Boolean[] values)
相比之下。RealmQuery<E>
in(String fieldName, Byte[] values)
相比之下。RealmQuery<E>
in(String fieldName, Double[] values)
相比之下。RealmQuery<E>
in(String fieldName, Float[] values)
相比之下。RealmQuery<E>
in(String fieldName, Integer[] values)
相比之下。RealmQuery<E>
in(String fieldName, Long[] values)
相比之下。RealmQuery<E>
in(String fieldName, Short[] values)
相比之下。RealmQuery<E>
in(String fieldName, String[] values)
相比之下。RealmQuery<E>
in(String fieldName, String[] values, Case casing)
相比之下。RealmQuery<E>
in(String fieldName, Date[] values)
相比之下。RealmQuery<E>
isEmpty(String fieldName)
查找被视为“空”的值的条件,即空列表、长度为 0 的字符串或字节数组。RealmQuery<E>
isNotEmpty(String fieldName)
查找被视为“非空”值的条件,即具有非空值的列表、字符串或字节数组。RealmQuery<E>
isNotNull(String fieldName)
测试字段是否不是null
。RealmQuery<E>
isNull(String fieldName)
测试字段是否为null
。boolean
isValid()
RealmQuery<E>
lessThan(String fieldName, double value)
小于比较。RealmQuery<E>
lessThan(String fieldName, float value)
小于比较。RealmQuery<E>
lessThan(String fieldName, int value)
小于比较。RealmQuery<E>
lessThan(String fieldName, long value)
小于比较。RealmQuery<E>
lessThan(String fieldName, RealmAny value)
小于比较。RealmQuery<E>
lessThan(String fieldName, Date value)
小于比较。RealmQuery<E>
lessThan(String fieldName, UUID value)
小于比较。RealmQuery<E>
lessThan(String fieldName, Decimal128 value)
小于比较。RealmQuery<E>
lessThan(String fieldName, ObjectId value)
小于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, double value)
小于或等于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, float value)
小于或等于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, int value)
小于或等于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, long value)
小于或等于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, RealmAny value)
小于或等于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, Date value)
小于或等于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, UUID value)
小于或等于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, Decimal128 value)
小于或等于比较。RealmQuery<E>
lessThanOrEqualTo(String fieldName, ObjectId value)
小于或等于比较。RealmQuery<E>
like(String fieldName, RealmAny value)
条件 field 的值与指定子字符串匹配,带通配符: '*' matches [0, n] unicode chars '?'匹配单个 unicode 字符。RealmQuery<E>
like(String fieldName, RealmAny value, Case casing)
条件 field 的值与指定子字符串匹配,带通配符: '*' matches [0, n] unicode chars '?'匹配单个 unicode 字符。RealmQuery<E>
like(String fieldName, String value)
条件 field 的值与指定子字符串匹配,带通配符: '*' matches [0, n] unicode chars '?'匹配单个 unicode 字符。RealmQuery<E>
like(String fieldName, String value, Case casing)
条件 field 的值与指定子字符串匹配,带通配符: '*' matches [0, n] unicode chars '?'匹配单个 unicode 字符。RealmQuery<E>
limit(long limit)
限制返回的对象数量,以防查询匹配到更多对象。Number
max(String fieldName)
查找字段的最大值。Date
maximumDate(String fieldName)
查找字段的最大值。RealmAny
maxRealmAny(String fieldName)
查找RealmAny
字段的最大值。Number
min(String fieldName)
查找字段的最小值。Date
minimumDate(String fieldName)
查找字段的最小值。RealmAny
minRealmAny(String fieldName)
查找RealmAny
字段的最小值。RealmQuery<E>
not()
否定条件。RealmQuery<E>
notEqualTo(String fieldName, byte[] value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, RealmAny value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, RealmAny value, Case casing)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Boolean value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Byte value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Double value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Float value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Integer value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Long value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Short value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, String value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, String value, Case casing)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Date value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, UUID value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, Decimal128 value)
不等于比较。RealmQuery<E>
notEqualTo(String fieldName, ObjectId value)
不等于比较。RealmQuery<E>
or()
逻辑或两个条件。RealmQuery<E>
rawPredicate(String predicate, Object... arguments)
使用 Realm Query Language 创建基于文本的谓词。RealmQuery<E>
sort(String fieldName)
按特定字段名称升序对查询结果进行排序。RealmQuery<E>
sort(String[] fieldNames, Sort[] sortOrders)
按所提供顺序中的特定字段名称对查询结果进行排序。RealmQuery<E>
sort(String fieldName, Sort sortOrder)
按指定字段名称和顺序对查询结果进行排序。RealmQuery<E>
sort(String fieldName1, Sort sortOrder1, String fieldName2, Sort sortOrder2)
按所提供顺序中的特定字段名称对查询结果进行排序。Number
sum(String fieldName)
计算给定字段的总和。
-
-
-
方法详细信息
-
isValid
public boolean isValid()
- 返回:
true
如果仍然有效,则返回false
。
-
IsNull
public RealmQuery<E> isNull(String fieldName)
测试字段是否为null
。 仅适用于可为 null 的字段。对于链接查询,如果链接路径的任何部分是
null
,则整个路径被视为null
,例如,如果linkField
或linkField.stringField
为null
,则isNull("linkField.stringField")
将被视为null
。- 参数:
fieldName
- 字段名称。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不可为空。- 另请参阅:
for further infomation.
-
isNotNull
public RealmQuery<E> isNotNull(String fieldName)
测试字段是否不是null
。 仅适用于可为 null 的字段。- 参数:
fieldName
- 字段名称。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不可为空。- 另请参阅:
for further infomation.
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable String value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable String value, Case casing)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, RealmAny value, Case casing)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Decimal128 value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable ObjectId value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable UUID value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Byte value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable byte[] value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Short value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Integer value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Long value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Double value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Float value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Boolean value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, @Nullable Date value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
EqualTo
public RealmQuery<E> equalTo(String fieldName, RealmAny value)
等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
in
public RealmQuery<E> in(String fieldName, @Nullable String[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是字符串字段。
-
in
public RealmQuery<E> in(String fieldName, @Nullable String[] values, Case casing)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。casing
- 如何处理大小写。Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是字符串字段。
-
in
public RealmQuery<E> in(String fieldName, @Nullable Byte[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是字节字段。
-
in
public RealmQuery<E> in(String fieldName, @Nullable Short[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是短字段。
-
in
public RealmQuery<E> in(String fieldName, @Nullable Integer[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是整型字段。
-
in
public RealmQuery<E> in(String fieldName, @Nullable Long[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是长整型字段。 空。
-
in
public RealmQuery<E> in(String fieldName, @Nullable Double[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是双精度字段。 空。
-
in
public RealmQuery<E> in(String fieldName, @Nullable Float[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是浮点字段。
-
in
public RealmQuery<E> in(String fieldName, @Nullable Boolean[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果该字段不是布尔值。 或为空。
-
in
public RealmQuery<E> in(String fieldName, @Nullable Date[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是日期字段。
-
in
public RealmQuery<E> in(String fieldName, RealmAny[] values)
相比之下。 这允许您测试对象是否与值数组中的任何值匹配。- 参数:
fieldName
- 要比较的字段。values
- 要比较的值的数组。 如果提供了null
或空数组,则查询永远不会匹配任何结果。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段不是日期字段。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable String value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable String value, Case casing)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。casing
- 如何处理大小写。Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, RealmAny value, Case casing)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。casing
- 如何处理大小写。Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, Decimal128 value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, ObjectId value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, UUID value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, RealmAny value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable Byte value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable byte[] value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable Short value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable Integer value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable Long value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable Double value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable Float value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable Boolean value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
不等于
public RealmQuery<E> notEqualTo(String fieldName, @Nullable Date value)
不等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, int value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, long value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, double value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, float value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, Date value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, RealmAny value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, Decimal128 value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, ObjectId value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
大于
public RealmQuery<E> greaterThan(String fieldName, UUID value)
大于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, int value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, long value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, double value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, float value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, Date value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, Decimal128 value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, ObjectId value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, UUID value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
moreThanOrEqualTo
public RealmQuery<E> greaterThanOrEqualTo(String fieldName, RealmAny value)
大于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, int value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, long value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, Decimal128 value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, ObjectId value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, UUID value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, double value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, float value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, Date value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于
public RealmQuery<E> lessThan(String fieldName, RealmAny value)
小于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, int value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, long value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, Decimal128 value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, ObjectId value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, UUID value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, double value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, float value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, Date value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
小于或等于
public RealmQuery<E> lessThanOrEqualTo(String fieldName, RealmAny value)
小于或等于比较。- 参数:
fieldName
- 要比较的字段。value
- 要比较的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
between
public RealmQuery<E> between(String fieldName, int from, int to)
介于条件之间。- 参数:
fieldName
- 要比较的字段。from
- 最低值(含)。to
- 最高值(含)。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
between
public RealmQuery<E> between(String fieldName, long from, long to)
介于条件之间。- 参数:
fieldName
- 要比较的字段。from
- 最低值(含)。to
- 最高值(含)。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
between
public RealmQuery<E> between(String fieldName, double from, double to)
介于条件之间。- 参数:
fieldName
- 要比较的字段。from
- 最低值(含)。to
- 最高值(含)。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
between
public RealmQuery<E> between(String fieldName, float from, float to)
介于条件之间。- 参数:
fieldName
- 要比较的字段。from
- 最低值(含)。to
- 最高值(含)。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
between
public RealmQuery<E> between(String fieldName, Date from, Date to)
介于条件之间。- 参数:
fieldName
- 要比较的字段。from
- 最低值(含)。to
- 最高值(含)。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
between
public RealmQuery<E> between(String fieldName, RealmAny from, RealmAny to)
介于条件之间。- 参数:
fieldName
- 要比较的字段。from
- 最低值(含)。to
- 最高值(含)。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
between
public RealmQuery<E> between(String fieldName, Decimal128 from, Decimal128 to)
介于条件之间。- 参数:
fieldName
- 要比较的字段。from
- 最低值(含)。to
- 最高值(含)。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
contains
public RealmQuery<E> contains(String fieldName, String value)
条件是字段值包含指定的子字符串。- 参数:
fieldName
- 要比较的字段。value
- 子字符串。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
contains
public RealmQuery<E> contains(String fieldName, RealmAny value)
条件是字段值包含指定的子字符串。- 参数:
fieldName
- 要比较的字段。value
- 子字符串。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
contains
public RealmQuery<E> contains(String fieldName, String value, Case casing)
条件是字段值包含指定的子字符串。- 参数:
fieldName
- 要比较的字段。value
- 子字符串。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
contains
public RealmQuery<E> contains(String fieldName, RealmAny value, Case casing)
条件是字段值包含指定的子字符串。- 参数:
fieldName
- 要比较的字段。value
- 子字符串。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
beginswith
public RealmQuery<E> beginsWith(String fieldName, String value)
条件是字段的值以指定字符串开头。- 参数:
fieldName
- 要比较的字段。value
- 字符串。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
beginswith
public RealmQuery<E> beginsWith(String fieldName, RealmAny value)
条件是字段的值以指定字符串开头。- 参数:
fieldName
- 要比较的字段。value
- 字符串。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
beginswith
public RealmQuery<E> beginsWith(String fieldName, String value, Case casing)
条件是字段的值以指定子字符串开头。- 参数:
fieldName
- 要比较的字段。value
- 子字符串。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
beginswith
public RealmQuery<E> beginsWith(String fieldName, RealmAny value, Case casing)
条件是字段的值以指定子字符串开头。- 参数:
fieldName
- 要比较的字段。value
- 子字符串。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
endswith
public RealmQuery<E> endsWith(String fieldName, String value)
条件是字段的值以指定字符串结尾。- 参数:
fieldName
- 要比较的字段。value
- 字符串。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
endswith
public RealmQuery<E> endsWith(String fieldName, RealmAny value)
条件是字段的值以指定字符串结尾。- 参数:
fieldName
- 要比较的字段。value
- 字符串。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
endswith
public RealmQuery<E> endsWith(String fieldName, String value, Case casing)
条件是字段的值以指定子字符串结尾。- 参数:
fieldName
- 要比较的字段。value
- 子字符串。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
endswith
public RealmQuery<E> endsWith(String fieldName, RealmAny value, Case casing)
条件是字段的值以指定子字符串结尾。- 参数:
fieldName
- 要比较的字段。value
- 子字符串。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
就像
public RealmQuery<E> like(String fieldName, String value)
条件字段的值与指定子字符串匹配,并带有通配符:- '*' 匹配 [0, n] unicode 字符
- '?'匹配单个 unicode 字符。
- 参数:
fieldName
- 要比较的字段。value
— 通配符字符串。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
就像
public RealmQuery<E> like(String fieldName, RealmAny value)
条件字段的值与指定子字符串匹配,并带有通配符:- '*' 匹配 [0, n] unicode 字符
- '?'匹配单个 unicode 字符。
- 参数:
fieldName
- 要比较的字段。value
— 通配符字符串。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
就像
public RealmQuery<E> like(String fieldName, String value, Case casing)
条件字段的值与指定子字符串匹配,并带有通配符:- '*' 匹配 [0, n] unicode 字符
- '?'匹配单个 unicode 字符。
- 参数:
fieldName
- 要比较的字段。value
— 通配符字符串。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
就像
public RealmQuery<E> like(String fieldName, RealmAny value, Case casing)
条件字段的值与指定子字符串匹配,并带有通配符:- '*' 匹配 [0, n] unicode 字符
- '?'匹配单个 unicode 字符。
- 参数:
fieldName
- 要比较的字段。value
— 通配符字符串。casing
- 如何处理大小写。 将其设置为Case.INSENSITIVE
仅适用于 Latin-1 字符。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果一个或多个参数与类或字段类型不匹配。
-
beginGroup
public RealmQuery<E> beginGroup()
开始对条件进行分组(“左括号”)。 必须通过调用endGroup()
来关闭群组。- 返回:
- 查询对象。
- 另请参阅:
endGroup()
-
endGroup
public RealmQuery<E> endGroup()
结束通过调用beginGroup()
打开的条件分组(“右括号”)。- 返回:
- 查询对象。
- 另请参阅:
beginGroup()
-
or
public RealmQuery<E> or()
逻辑或两个条件。- 返回:
- 查询对象。
-
和
public RealmQuery<E> and()
逻辑与两个条件 Realm 会自动在所有声明之间应用逻辑与,因此这只是为了提高可读性的平均值。- 返回:
- 查询对象
-
not
public RealmQuery<E> not()
否定条件。- 返回:
- 查询对象。
-
isEmpty
public RealmQuery<E> isEmpty(String fieldName)
查找被视为“空”的值的条件,即空列表、长度为 0 的字符串或字节数组。- 参数:
fieldName
- 要比较的字段。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效或其类型不是 RealmList、字符串或字节数组。
-
isNotEmpty
public RealmQuery<E> isNotEmpty(String fieldName)
查找被视为“非空”值的条件,即具有非空值的列表、字符串或字节数组。- 参数:
fieldName
- 要比较的字段。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效或其类型不是 RealmList、字符串或字节数组。
-
containsKey
public RealmQuery<E> containsKey(String fieldName, @Nullable String key)
条件是该值(如果是字典字段)包含指定的键。- 参数:
fieldName
- 要比较的字段。key
- 要搜索的键。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Boolean value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Byte value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Short value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Integer value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Long value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Double value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Float value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable String value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable byte[] value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Date value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable Decimal128 value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable ObjectId value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, @Nullable UUID value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, RealmAny value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsValue
public RealmQuery<E> containsValue(String fieldName, RealmModel value)
如果该值是字段,则条件包含指定值。- 参数:
fieldName
- 要比较的字段。value
- 要搜索的值。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
containsEntry
public RealmQuery<E> containsEntry(String fieldName, Map.Entry<String,?> entry)
条件是该值(如果是字典字段)包含指定的条目。- 参数:
fieldName
- 要比较的字段。entry
- 要搜索的条目。- 返回:
- 查询对象。
- 抛出异常:
IllegalArgumentException
- 如果字段名称无效。
-
总和
公共数字总和(字符串字段名称)
计算给定字段的总和。- 参数:
fieldName
- 要求和的字段。 仅支持数字和 RealmAny 字段。- 返回:
- 匹配对象的字段总和。 如果对象不存在,或者给定字段的值为
null
,则返回0
。计算总和时,具有null
值的对象将被忽略。 应用于 RealmAny 字段时,仅对数值 (Byte/Integer/Integer/Long/Float/Double/Decimal128) 求和,返回类型为Decimal128
。 - 抛出异常:
IllegalArgumentException
- 如果字段不是数字类型。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
平均值
公共双重平均值( String fieldName)
返回给定字段的平均值。不支持点字段表示法。- 参数:
fieldName
- 计算平均值的字段。 仅支持数字字段。- 返回:
- 查询结果中对象之间给定字段的平均值。对于所有类型的数字字段,该值的类型都是 double。如果对象不存在,或者给定字段的值为
null
,则返回0
。计算平均值时,具有null
值的对象将被忽略。 - 抛出异常:
IllegalArgumentException
- 如果字段不是数字类型。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
averageDecimal128
@Nullable public Decimal128 averageDecimal128( String fieldName)
返回给定字段的平均值。不支持点字段表示法。- 参数:
fieldName
- 计算平均值的字段。 仅支持 Decimal128 字段。对于其他数字类型,请考虑使用average(String)
。- 返回:
- 查询结果中对象之间给定字段的平均值。其类型为 Decimal128。 如果对象不存在或都具有
null
作为给定字段的值,则将返回0
。计算平均值时,具有null
值的对象将被忽略。 - 抛出异常:
IllegalArgumentException
- 如果字段不是 Decimal128 类型。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
averageRealmAny
@Nullable public Decimal128 averageRealmAny( String fieldName)
返回给定字段的平均值。不支持点字段表示法。- 参数:
fieldName
- 计算平均值的字段。 仅支持 RealmAny 字段。对于其他类型,请考虑使用average(String)
。- 返回:
- 查询结果中对象之间给定字段的平均值。其类型为 Decimal128。 如果对象不存在或都具有
null
作为给定字段的值,则将返回0
。计算平均值时,具有null
值的对象将被忽略。 - 抛出异常:
IllegalArgumentException
- 如果字段不是 RealmAny 类型。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
min
@Nullable public Number min( String fieldName)
查找字段的最小值。- 参数:
fieldName
- 查找最小值的字段。 仅支持数字字段。- 返回:
- 如果对象不存在,或者给定字段的值为
null
,则返回null
。否则返回最小值。 确定最小值时,具有null
值的对象将被忽略。 - 抛出异常:
IllegalArgumentException
- 如果字段不是数字类型。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
minimumDate
@Nullable public Date minimumDate( String fieldName)
查找字段的最小值。- 参数:
fieldName
- 字段名称- 返回:
- 如果对象不存在,或者给定日期字段的值为
null
,则返回null
。 否则,返回最小日期。 确定最小日期时,具有null
值的对象将被忽略。 - 抛出异常:
UnsupportedOperationException
- 如果查询无效(“语法错误”)。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
minRealmAny
public RealmAny minRealmAny( String fieldName)
查找RealmAny
字段的最小值。- 参数:
fieldName
— 包含 RealmAny 值的字段。- 返回:
- 如果对象不存在,或者给定 RealmAny 字段的值为
null
,则返回RealmAny.Type.NULL
。 否则,将返回最小 RealmAny。 确定最小 RealmAny 时,具有null
值的对象将被忽略。 有关如何比较 RealmAny 值的更多详细信息,请参阅RealmAny
文档。 - 抛出异常:
UnsupportedOperationException
- 如果查询无效(“语法错误”)。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
Max
@Nullable public Number max( String fieldName)
查找字段的最大值。- 参数:
fieldName
- 要查找最大值的字段。 仅支持数字字段。- 返回:
- 如果对象不存在,或者给定字段的值为
null
,则返回null
。否则返回最大值。 确定最大值时,具有null
值的对象将被忽略。 - 抛出异常:
IllegalArgumentException
- 如果字段不是数字类型。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
maximumDate
@Nullable public Date maximumDate( String fieldName)
查找字段的最大值。- 参数:
fieldName
- 字段名称。- 返回:
- 如果对象不存在,或者给定日期字段的值为
null
,则返回null
。否则,返回最大日期。 确定最大日期时,具有null
值的对象将被忽略。 - 抛出异常:
UnsupportedOperationException
- 如果查询无效(“语法错误”)。
-
maxRealmAny
public RealmAny maxRealmAny( String fieldName)
查找RealmAny
字段的最大值。- 参数:
fieldName
— 包含 RealmAny 值的字段。- 返回:
- 如果对象不存在,或者给定 RealmAny 字段的值为
null
,则返回RealmAny.Type.NULL
。 否则,将返回 RealmAny 的最大值。 确定 RealmAny 的最大值时,具有null
值的对象将被忽略。 有关如何比较 RealmAny 值的更多详细信息,请参阅RealmAny
文档。 - 抛出异常:
UnsupportedOperationException
- 如果查询无效(“语法错误”)。
-
数数
public long count()
统计满足查询条件的对象数量。- 返回:
- 匹配对象的数量。
- 抛出异常:
UnsupportedOperationException
- 如果查询无效(“语法错误”)。RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。
-
findAll
public RealmResults<E> findAll()
查找所有满足查询条件的对象。从用户界面线程启动大量查询可能会导致丢帧甚至 ANR。 我们不建议这样做,因此默认情况下也是不允许的。 如果要防止这些行为,可以使用将 显式设置为 的 来获取 Realm。
RealmConfiguration
RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
false
这样,您将被迫从非用户界面线程启动查询,否则调用此方法将抛出RealmException
。 或者,您可以使用findAllAsync()
。- 返回:
- 包含对象的
RealmResults
。 如果没有对象与条件匹配,则返回包含零个对象的列表。 - 抛出异常:
RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。- 另请参阅:
RealmResults
-
findAllAsync
public RealmResults<E> findAllAsync()
查找所有满足查询条件的对象。 此方法只能在 Looper 线程中使用。- 返回:
- 立即得到一个空的
RealmResults
。 用户需要注册侦听器RealmResults.addChangeListener(RealmChangeListener)
,以便在查询完成时收到通知。 - 另请参阅:
RealmResults
-
sort
public RealmQuery<E> sort(String fieldName)
按特定字段名称升序对查询结果进行排序。排序目前仅限于“基本拉丁语”、“拉丁语补充”、“拉丁扩展 A”、“拉丁扩展 B”(UTF-8 范围 0-591)中的字符集。 对于其他字符集,排序不起作用。
- 参数:
fieldName
- 作为排序依据的字段名称。- 抛出异常:
IllegalArgumentException
- 如果字段名称不存在。IllegalStateException
- 如果已定义排序顺序。
-
sort
public RealmQuery<E> sort(String fieldName, Sort sortOrder)
按指定字段名称和顺序对查询结果进行排序。排序目前仅限于“基本拉丁语”、“拉丁语补充”、“拉丁扩展 A”、“拉丁扩展 B”(UTF-8 范围 0-591)中的字符集。 对于其他字符集,排序不起作用。
- 参数:
fieldName
- 作为排序依据的字段名称。sortOrder
— 如何对结果进行排序。- 抛出异常:
IllegalArgumentException
- 如果字段名称不存在。IllegalStateException
- 如果已定义排序顺序。
-
sort
public RealmQuery<E> sort(String fieldName1, Sort sortOrder1, String fieldName2, Sort sortOrder2)
按所提供顺序中的特定字段名称对查询结果进行排序。fieldName2
仅在fieldName1
中的值相等的情况下使用。排序目前仅限于“基本拉丁语”、“拉丁语补充”、“拉丁扩展 A”、“拉丁扩展 B”(UTF-8 范围 0-591)中的字符集。 对于其他字符集,排序不起作用。
- 参数:
fieldName1
- 第一个字段名称sortOrder1
- 第一个字段的排序顺序fieldName2
- 第二个字段名称sortOrder2
- 第二个字段的排序顺序- 抛出异常:
IllegalArgumentException
- 如果字段名称不存在。IllegalStateException
- 如果已定义排序顺序。
-
sort
public RealmQuery<E> sort(String[] fieldNames, Sort[] sortOrders)
按所提供顺序中的特定字段名称对查询结果进行排序。仅当前面的字段值相等时才会使用后面的字段。排序目前仅限于“基本拉丁语”、“拉丁语补充”、“拉丁扩展 A”、“拉丁扩展 B”(UTF-8 范围 0-591)中的字符集。 对于其他字符集,排序不起作用。
- 参数:
fieldNames
- 作为排序依据的字段名称数组。sortOrders
- 如何对字段名称进行排序。- 抛出异常:
IllegalArgumentException
- 如果字段名称不存在。IllegalStateException
- 如果已定义排序顺序。
-
distinct
public RealmQuery<E> distinct(String firstFieldName, String... remainingFieldNames)
选择特定类的一组不同对象。 当给定多个不同字段时,将返回字段中值的所有唯一组合。 如果有多个匹配项,则未定义返回哪个对象。 除非结果已排序,否则将返回第一个对象。- 参数:
firstFieldName
- 查找不同对象时使用的第一个字段名。remainingFieldNames
- 确定字段值的所有唯一组合时剩余的字段名称。- 抛出异常:
IllegalArgumentException
- 如果字段名称为空或null
、不存在、是不支持的类型或指向链接字段。IllegalStateException
- 如果已定义不同的字段名称。
-
limit
public RealmQuery<E> limit(long limit)
限制返回的对象数量,以防查询匹配到更多对象。请注意,当将此方法与
sort(String)
和distinct(String, String...)
结合使用时,它们将按添加顺序执行,这可能会影响最终结果。- 参数:
limit
- 为≥ 1
的限制。- 抛出异常:
IllegalArgumentException
- 如果提供的limit
小于 1。
-
alwaysTrue
public RealmQuery<E> alwaysTrue()
该谓词将始终匹配。
-
alwaysFalse
public RealmQuery<E> alwaysFalse()
此谓词永远不会匹配,导致查询始终返回 0 个结果。
-
rawPredicate
public RealmQuery<E> rawPredicate(String predicate, Object... arguments)
使用 Realm Query Language 创建基于文本的谓词。 该谓词可以与其他原始谓词或类型安全谓词结合使用,它接受 Realm 值作为参数。原始谓词中使用的类和属性名称可以是 Realm 模型类中定义的名称,也可以是使用
参数在字符串谓词中定义为 $argument_index,其中 $argument_index 是一个十进制整数,用于指定参数在参数列表中的位置。 第一个参数由 $0 引用,第二个参数由 $1 引用,依此类推。RealmClass
或RealmField
注解定义的内部名称。 如果类名或属性名包含空格,则必须对这些空格进行转义。有关 Realm Query Language 的更详细说明,请参阅这些文档。
例子:
RealmQuery<Person> query = realm.where(Person.class); // Simple query query.rawPredicate("name = 'Jane'"); // Spaces in property name query.rawPredicate("my\ property = 'Jane'"); // Multiple predicates query.rawPredicate("name = 'Jane' OR name = 'John'") // Collection queries query.rawPredicate("children.@count > 3") query.rawPredicate("ALL children.age > 18") // Sub queries query.rawPredicate("SUBQUERY(children, $child, $child.age > 21 AND $child.gender = 'male').@count > 0"); // Sort, Distinct, Limit query.rawPredicate("name = 'Jane' SORT(lastName ASC) DISTINCT(city) LIMIT(5)"); // Arguments query.rawPredicate("name = $0 AND age > $1", "Jane", 18);
- 参数:
predicate
— Realm Query Language 谓词。arguments
— 谓词的 Realm 值。- 抛出异常:
IllegalArgumentException
- 如果存在语法错误。
-
getRealm
公共Realm getRealm()
返回此查询所属的Realm
实例。不鼓励在返回的实例上调用
Closeable.close()
,因为它与在原始 Realm 实例上调用它相同,这可能会导致 Realm 完全关闭,从而使查询无效。- 返回:
Realm
此查询所属的实例。- 抛出异常:
IllegalStateException
- 如果 Realm 是DynamicRealm
的实例或者Realm
已关闭。
-
getDescription
public String getDescription()
返回此查询的文本描述。- 返回:
- 查询的文本描述。
-
getTypeQueried
public String getTypeQueried()
返回正在查询的类型的内部 Realm 名称。- 返回:
- 正在查询的 Realm 模型类的内部名称。
-
getQueryPointer
public long getQueryPointer()
返回指向底层 C++ 查询的指针。 此方法仅是公开的,因为架构设计选择很难变通,应将其视为内部方法,并且可以在没有警告的情况下进行更改。- 返回:
- 指向底层 C++ 查询的指针。
-
findFirst
@Nullable public E findFirst()
查找第一个满足查询条件的对象。从用户界面线程启动大量查询可能会导致丢帧甚至 ANR。 我们不建议这样做,但默认情况下允许这样做。 如果要防止这些行为,可以使用将 显式设置为 的 来获取 Realm。
RealmConfiguration
RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
false
这样,您将被迫从非用户界面线程启动查询,否则调用此方法将抛出RealmException
。 或者,您可以使用findFirstAsync()
。- 返回:
- 找到的对象;如果没有对象与查询条件匹配,则为
null
。 - 抛出异常:
RealmException
- 如果通过RealmConfiguration.Builder.allowQueriesOnUiThread(boolean)
选择退出后从用户界面线程调用。- 另请参阅:
RealmObject
-
findFirstAsync
public E findFirstAsync()
与findFirst()
类似,但在工作线程上异步运行。 应向返回的RealmObject
注册侦听器,以便在查询完成时获取通知。 如果查询的RealmObject
发生更改,也会触发已注册的侦听器。 如果RealmObject
被删除,则监听器将被调用最后一次,然后停止。 不会重新运行查询。- 返回:
- 立即获得一个带有
isLoaded() == false
的空RealmObject
}。 在加载返回对象之前尝试访问该对象上的任何字段都会抛出IllegalStateException
。 - 抛出异常:
IllegalStateException
- 如果在非事件循环线程上调用此方法。
-
-