安装包 io.realm
枚举 ImportFlag
- java.lang.Object
-
- java.lang.Enum < ImportFlag >
-
- io.realm.ImportFlag
-
- 所有已实现的接口:
Serializable
,Comparable<ImportFlag>
public enum ImportFlag extends Enum<ImportFlag>
此类描述了在保存整个对象时如何将数据保存到 Realm 中。
-
-
枚举常量摘要
枚举常量 枚举常量 说明 CHECK_SAME_VALUES_BEFORE_SET
启用此标志后,如果字段包含的值与 Realm 中已存在的值相同,则不会将其写入 Realm 文件。
-
-
-
枚举常量详细信息
-
CHECK_SAME_VALUES_BEFORE_SET
public static final ImportFlag CHECK_SAME_VALUES_BEFORE_SET
启用此标志后,如果字段包含的值与 Realm 中已存在的值相同,则不会将其写入 Realm 文件。对于本地 Realm,这仅对变更侦听器有影响,变更侦听器不会报告对未写入字段的更改。
对于同步的 Realm,这也会影响服务器,因为需要上传和合并到服务器 Realm 中的更改更少,因此服务器的性能将得到提高。
它还会影响服务器合并来自不同设备的更改的方式。 Realm 在合并对象中的各个字段时采用最后写入优先的方法,因此,如果某个字段未被写入,则该字段将被视为比其他已修改字段“更旧”。
例如:
- 服务器开始时为(字段 A = 1,字段 B = 1)
- 设备 1 写入(字段 A = 2,字段 B = 2)。
- 设备 2 写入(字段 A = 3,字段 B = 1)但忽略(字段 B = 1),因为这是此时 Realm 文件中的值。
- 设备 1 将其更改上传到服务器,从而形成服务器(字段 A = 2,字段 B = 2)。 然后,设备 2 上传其更改。 由于 last-write-wins,服务器版本现在变为(字段 A = 3,字段 B = 2)。
- 另请参阅:
- 有关冲突解决的文档
-
-
方法详细信息
-
values
public static ImportFlag[] values()
按声明顺序返回包含此枚举类型常量的数组。 此方法可用于迭代常量,如下所示:for (ImportFlag c : ImportFlag.values()) System.out.println(c);
- 返回:
- 包含此枚举类型常量的数组,按声明顺序排列
-
的值
public static ImportFlag valueOf(String name)
返回具有指定名称的该类型的枚举常量。 该字符串必须与用于声明此类型的枚举常量的标识符完全匹配。 (不允许使用多余的空白字符。)- 参数:
name
- 要返回的枚举常量的名称。- 返回:
- 具有指定名称的枚举常量
- 抛出异常:
IllegalArgumentException
- 如果此枚举类型没有指定名称的常量NullPointerException
- 如果参数为 null
-
-