如何使用GetStorage存储Set集合?(已掌握List存储方法)
使用get_storage存储Set类型数据
完全可以实现Set类型数据的存储,核心思路是利用Set与List的互转适配get_storage的序列化机制(JSON原生不支持Set类型,get_storage底层依赖JSON序列化)。以下是具体的读写实现:
写入Set数据
var box = GetStorage(); Set<int> setInt = {1, 2, 3}; // 将Set转为List后写入 box.write('setInt', setInt.toList());
读取并还原为Set数据
// 读取后先转为List,再转回Set Set<int> readSet = (box.read('setInt')?.cast<int>() ?? []).toSet();
说明
- 写入时:Set无法直接被JSON序列化,通过
toList()转为List后存储,和你原有List存储逻辑兼容。 - 读取时:先读取到List(和你读List的方式一致),再通过
toSet()还原为Set,Set自动去重的特性会完整保留。
内容的提问来源于stack exchange,提问作者Kel
相关产品推荐
相关产品推荐

