类 RealmList
在此页面上
- io.realm
- 构造函数
- 字段摘要
- 方法摘要
- 继承方法
- 字段详细信息
baseRealm
- 构造函数详细信息
- 方法详细信息
- 添加
- addChangeListener
- asChangesetObservable
- asFlowable
- 平均值
- 清除
- contains
- createSnapshot
- deleteAllFromRealm
- deleteFirstFromRealm
- deleteFromRealm
- deleteLastFromRealm
- first
- 冻结
- 获取
- getRealm
- IsFrozen
- isLoaded
- isManaged
- isValid
- 迭代器
- last
- listIterator
- 负载
- Max
- maxDate
- min
- minDate
- move
- 删除
- 删除全部
- 删除所有变更监听器
- removeChangeListener
- 集
- size
- sort
- 总和
- toString
- WHERE
io.realm
实现的接口:
RealmList 用于对io.realm.RealmObject中的一对多关系进行建模。 RealmList 有两种模式:托管模式和非托管模式。 在托管模式下,所有对象都会保留在 Realm 中,在非托管模式下,它会像普通的 ArrayList 一样工作。
只有 Realm 可以创建托管 RealmList。 每当更新底层 Realm 时,托管 RealmList 都会自动更新内容,并且只能使用io.realm.RealmObject的 getter 进行访问。
非托管 RealmList 可由用户创建,可包含托管和非托管 RealmObject。 这在处理 JSON 反序列化器(例如 GSON)或其他将值注入到类中的框架时非常有用。 可以使用Realm.copyToRealm(Iterable, ImportFlag...)方法将此列表中的非托管元素添加到 Realm 中。
RealmList包含的元素数量可以超过 Integer.MAX_VALUE
。 在这种情况下,您只能访问权限其中的前Integer.MAX_VALUE
元素。
构造函数
字段摘要
修饰符和类型 | 字段和描述 |
---|---|
public final BaseRealm |
方法摘要
修饰符和类型 | 方法和说明 |
---|---|
公共布尔值 | 在此 List 的末尾添加指定对象。 |
public void | 将指定对象插入此 List 的指定位置。 |
public void | 向此RealmList添加变更侦听器。 |
public void | |
public <any> | 返回一个 Rx Observable,用于监控对此 RealmList 的更改。 |
public <any> | asFlowable () 返回一个监控此 RealmList 变更的 Rx Flowable。 |
公共双精度 | |
public void | clear () 从此列表中删除所有元素,使其为空。 |
公共布尔值 | |
从此OrderedRealmCollection创建快照。 | |
公共布尔值 | 这将从底层 Realm 以及集合中删除集合中的所有对象。 |
公共布尔值 | 从 Realm 中删除第一个对象。 |
public void | 从 Realm 中删除给定索引处的对象。 |
公共布尔值 | 从 Realm 中删除最后一个对象。 |
公用E | 获取collection中的第一个对象。 |
公用E | first () 获取collection中的第一个对象。 |
freeze () | |
公用E | 返回此列表中指定位置的元素。 |
公共Realm | |
公共布尔值 | isFrozen () |
公共布尔值 | isLoaded () 检查collection是否已完成数据加载。 |
公共布尔值 | isManaged () 检查collection是否由Realm托管。 |
公共布尔值 | |
iterator () | |
公用E | 从collection中获取最后一个对象。 |
公用E | last () 从collection中获取最后一个对象。 |
公共 ListIterator | |
公共 ListIterator | listIterator () |
公共布尔值 | load () 阻止collection,直到所有数据都可用。 |
公众 号 | |
公共 日期 | |
公众 号 | |
公共 日期 | |
public void | 将对象从一个位置移动到另一个位置,同时保持列表大小固定。 |
公共布尔值 | |
公用E | 从此列表中删除指定位置的对象。 |
公共布尔值 | 删除指定 |
public void | 删除所有用户定义的变更侦听器。 |
public void | 删除指定的变更侦听器。 |
public void | ) 删除指定的变更侦听器。 |
公用E | 将列表中指定位置的元素替换为指定对象。 |
公共整型 | size () 返回此 |
根据提供的字段和排序顺序对collection进行排序。 | |
公众 号 | |
公共string | toString () |
where () 返回一个 RealmQuery,可用于查询该类的特定对象。 |
继承方法
从类 java.lang.Object 继承的方法 :
getClass
、hashCode
、equals
、clone
、toString
、notify
、notifyAll
、wait
、wait
、wait
、finalize
从类 java.util.AbstractCollection 继承的方法 :
iterator
、size
、isEmpty
、contains
、toArray
、toArray
、add
、remove
、containsAll
、addAll
、removeAll
、retainAll
、clear
,toString
从类 java.util.AbstractList 继承的方法 :
add
、get
、set
、add
、remove
、indexOf
、lastIndexOf
、clear
、addAll
、iterator
、listIterator
、listIterator
、subList
、equals
、hashCode
、removeRange
字段详细信息
baseRealm
此列表所在的BaseRealm实例。
警告:此字段仅供内部使用,不应使用。
构造函数详细信息
public RealmList () |
---|
在非托管模式下创建 RealmList,其中的元素不受 Realm 控制。 这实际上使 RealmList 函数成为 java.util.ArrayList 并且无法查询处于此状态的对象。 使用io.realm.Realm.copyToRealm(Iterable, ImportFlag...)在 Realm 中正确保留其元素。 |
在非托管模式下创建一个具有初始元素列表的 RealmList。 非托管模式下的 RealmList 充当 java.util.ArrayList 并且无法查询处于此状态的对象。 使用io.realm.Realm.copyToRealm(Iterable, ImportFlag...)在 Realm 中正确保留所有非托管元素。 参数
|
方法详细信息
添加
在此 List 的末尾添加指定对象。
参数
返回: 始终 抛出异常
覆盖
|
将指定对象插入此 List 的指定位置。 该对象会插入到指定位置的任何前一个元素之前。 如果该位置等于此 List 的大小,则将该对象添加到末尾。
参数
抛出异常
覆盖
|
addChangeListener
向此RealmList添加变更侦听器。 注册变更侦听器不会阻止底层 RealmList 被垃圾收集。 如果对 RealmList 进行垃圾回收,则将停止触发变更侦听器。 为避免这种情况,请尽可能长时间地保留强引用,例如在类变量中。
参数
抛出异常
|
public void addChangeListener ( ) | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
向此RealmList添加变更侦听器。 注册变更侦听器不会阻止底层 RealmList 被垃圾收集。 如果对 RealmList 进行垃圾回收,则将停止触发变更侦听器。 为避免这种情况,请尽可能长时间地保留强引用,例如在类变量中。
参数
抛出异常
|
asChangesetObservable
public <any> asChangesetObservable () | |||||
---|---|---|---|---|---|
返回一个 Rx Observable,用于监控对此 RealmList 的更改。 订阅时,它将发出当前的 RealmList。 每次更新 RealmList 时,都会发送由 RealmList 和OrderedCollectionChangeSet组成的对。 首次发出 RealmList 时,变更集将为 RealmList 将在 RealmList 更新时不断发出 - 从 Realm Observables 发出的项目被冻结(请参阅冻结() 。 这意味着它们是不可变的,可以在任何线程上读取。 Realm Observables 始终从持有活动 Realm 的线程中发出项目。 这意味着,如果需要进行进一步处理,建议观察计算调度器上的值:
返回: 仅调用 抛出异常
|
asFlowable
public <any> asFlowable () | ||||||||
---|---|---|---|---|---|---|---|---|
返回一个监控此 RealmList 更改的 Rx Flowable。 订阅时,它将发出当前的 RealmList。 RealmList 将在 RealmList 更新时不断发出 - 从 Realm Flowables 发出的项被冻结(请参阅冻结() 。 这意味着它们是不可变的,可以在任何线程上读取。 Realm Flowables 始终从持有活动 RealmList 的线程中发出项目。 这意味着,如果需要进行进一步处理,建议观察计算调度器上的值:
如果希望
返回: 仅调用 抛出异常
|
平均值
清除
public void clear () |
---|
从此列表中删除所有元素,使其为空。 此方法不会从 Realm 中删除对象。 抛出异常
覆盖
|
contains
如果列表在附加到 Realm 时包含指定元素,则返回 如果列表未附加到 Realm,则默认使用 List.contains(Object) 实施将发生。 参数
返回:
覆盖
|
createSnapshot
public OrderedRealmCollectionSnapshot createSnapshot () |
---|
deleteAllFromRealm
public boolean deleteAllFromRealm () |
---|
这将从底层 Realm 以及集合中删除集合中的所有对象。 返回:
|
deleteFirstFromRealm
public boolean deleteFirstFromRealm () |
---|
从 Realm 中删除第一个对象。 这也会将其从该collection中删除。 返回:
|
deleteFromRealm
从 Realm 中删除给定索引处的对象。 这也会将其从collection中删除。 |
deleteLastFromRealm
public boolean deleteLastFromRealm () |
---|
从 Realm 中删除最后一个对象。 这也会将其从该collection中删除。 返回:
|
first
获取集合中的第一个对象。 如果collection为空,将使用提供的默认。 返回: 第一个对象或提供的默认值。 |
public E first () |
---|
获取collection中的第一个对象。 返回: 第一个对象。 |
冻结
获取
返回此列表中指定位置的元素。 参数
返回: 指定索引处的元素。 抛出异常
覆盖
|
getRealm
返回此collection所属的Realm 实例。 不鼓励在返回的实例上调用Realm.close() ,因为这与在原始 Realm 实例上调用它相同,这可能导致 Realm 完全关闭,从而使列表失效。 返回: 此集合所属的Realm实例,如果该集合为非托管集合,则为 抛出异常
|
IsFrozen
public boolean isFrozen () |
---|
isLoaded
public boolean isLoaded () |
---|
检查collection是否已完成数据加载。 返回:
|
isManaged
public boolean isManaged () |
---|
检查collection是否由Realm托管。一个托管的collection只是底层的Realm 文件中数据的包装器。在 Looper 线程上,托管 collection 将实时更新,因此它始终点向最新数据。托管集合具有线程限制,因此除了创建它们的线程之外,无法从其他线程访问托管集合。如果此方法返回 返回:
|
isValid
public boolean isValid () |
---|
检查集合是否仍可有效使用,即io.realm.Realm实例尚未关闭。 对于非托管collection,它将始终返回 返回:
|
迭代器
覆盖
|
last
从collection中获取最后一个对象。如果collection为空,将使用提供的默认。 返回: 最后一个对象或提供的默认值。 |
public E last () |
---|
从collection中获取最后一个对象。 返回: 最后一个对象。 |
listIterator
覆盖
|
public ListIterator listIterator () |
---|
覆盖
|
负载
public boolean load () |
---|
阻止collection,直到所有数据都可用。 返回:
|
Max
maxDate
min
minDate
move
将对象从一个位置移动到另一个位置,同时保持列表大小固定。 RealmObject 将进行移动,因此不会引入 参数
抛出异常
|
删除
如果此 参数
返回:
抛出异常
覆盖
|
从此列表中删除指定位置的对象。 参数
返回: 删除的对象。 抛出异常
覆盖
|
删除全部
删除指定 此实现遍历 参数
返回:
抛出异常
覆盖
|
删除所有变更监听器
public void removeAllChangeListeners () |
---|
removeChangeListener
删除指定的变更侦听器。 参数
抛出异常
|
public void removeChangeListener ( ) |
---|
删除指定的变更侦听器。 参数
抛出异常
|
集
将列表中指定位置的元素替换为指定对象。
参数
返回: 索引处的前一个元素。 抛出异常
覆盖
|
size
public int size () |
---|
返回此 返回: 此 抛出异常
覆盖
|
sort
总和
toString
覆盖
|
WHERE
public RealmQuery where () |
---|