用户首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。当用户希望有一个全局唯一存储的地方,可以采用用户首选项来进行存储。
鸿蒙OS定义的本地存储叫用户首选项。
判断题
1. 用户首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,它是一种关系型数据库。F
正确(True)
错误(False)
前面半句是正确的,后面半句错了。应该是非关系型数据库
2. 用户首选项Key是可以重复的关键字。F
正确(True)
错误(False)
Key是不能重复的,要不然怎么叫Key,钥匙怎么能重复
3. 用户首选项存储只需要注意Value大小限制。F
正确(True)
错误(False)
Key的大小限制为1024
单选题
1. 应用存入数据到Preferences实例后,可以使用flush()方法实现数据持久化,用户首选项的数据持久化后是放在哪里?C
A. 内存中
B. 数据库表中
C. 持久化文件
D. 云端
持久化的数据保存在文件中
2. 下面哪个接口用于使用户首选项数据持久化?D
A. get()
B. update()
C. put()
D. flush()
flush()方法是刷新并持久化
3. 下面哪个接口不是用户首选项提供的API接口?B
A. get()
B. update()
C. put()
D. flush()
update没有提供该方法.如果要更新,直接使用put即可,相同的key会自动更新,只保留唯一的key
4. 使用用户首选项持久化数据的正确流程?A
A. 使用getPreferencesSync()获取用户首选项实例,然后使用putSync()方法保存数据到缓存的Preferences实例中,再使用flush()持久化数据
B. 使用getPreferencesSync()获取用户首选项实例,然后使用getSync()方法保存数据到缓存的Preferences实例中,再使用flush()持久化数据
C. 使用getSync()获取用户首选项实例,然后使用getPreferencesSync()方法保存数据到缓存的Preferences实例中,再使用flush()持久化数据
D. 使用putSync()获取用户首选项实例,然后使用getPreferencesSync()方法保存数据到缓存的Preferences实例中,再使用flush()持久化数据
A,这个设计得有点麻烦,个人感觉preference可以作为一个内存变量,用户随时可以取用。现在这样的做法增加了开发量
多选题
1. 用户首选项支持存储应用持久化轻量级数据,关于其约束限制,下面说法正确的有?BCD
A. 用户首选项遵循ACID特性(Atomicity, Consistency, Isolation and Durability)
B. 用户首选项以Key-Value形式存取数据
C. 用户首选项存储数据数量建议不超过1万条
D. 用户首选项的Key为string类型
不是关系型数据库,所以没有ACID特性
2. 用户首选项支持存储应用持久化轻量级数据,关于其注意事项,下面说法不正确的有?BD
A. 用户首选项支持应用持久化轻量级数据
B. 用户首选项Key可以重复
C. 使用flush()方法把数据保存到文件
D. 通过get()方法判断首选项中是否包含指定的key,保证指定的key不会被重复保存
不正确的是B和D
3. 以下选项是键值对列表,以Key-Value形式展示,如[teacher-zhangsan, student-lisi],表示有两个键值对,第一个键值对Key为teacher,Value为zhangsan,第二个键值对Key为student,Value为lisi。哪组键值对不能用用户首选项存储?AC
A. [student-zhangsan, student-lisi]
B. [student1-zhangsan, student2-lisi]
C. [teacher-zhangsan, teacher-lisi]
D. [teacher1-zhangsan, teacher2-lisi]
A和C的KEY重复了.
这一章非常简单,主要内容就是KEY不能重复,value的长度有限制.本地存储不是关系型数据库。
操作起来有点复杂,比浏览器和小程序编程困难。
领取专属 10元无门槛券
私享最新 技术干货