0

我正在我的应用程序中实现一个标记系统。我有一个所有Tags要标记对象的主列表。对象可以有多个标签,这些标签是对主列表中标签的引用。

当我将数据保存为 json 文件,然后在我的应用程序再次运行时加载它时,这些引用会丢失(tagInMainList == referenceToTag不保留)。

我怎样才能解决这个问题?

4

2 回答 2

1

我会非常关心身份,除非您需要最小化内存使用和/或其他大量优化。恐怕,您需要一个自定义反序列化器。有了它,您可以简单地return tag使用return myTagInterner.intern(tag)Guava 的interner替换。

于 2012-08-29T21:13:11.770 回答
1

如果你松散地耦合你的引用,以至于它们只包含在地图查找中使用的键值怎么办?你仍然可以支持类似tagInMainList.equals(keyBasedReferenceToTag)or的等式tagInMainList.getKey().equals(keyBasedReferenceToTag)。JSON 会更简单,甚至可能更简洁。

于 2012-08-29T21:59:03.870 回答