gpt4 book ai didi

java - Guava SetMultimap 不可序列化(由于不可序列化 WrappedSet)

转载 作者:行者123 更新时间:2023-12-03 02:36:12 26 4
gpt4 key购买 nike

我经常使用java序列化,这对于存储完整的对象层次结构非常有用。

当尝试序列化 SetMultimap 时,我收到一个异常,表示 AbstractMultimap.WrappedSet不可序列化。

guava 用户如何解决这个问题?

提前致谢,

最佳答案

多重映射元素的 View (例如从 get 方法返回的集合、asMap View 等)是有意设计的不可序列化。但是,SetMultimap 实现因此而无法序列化是不正确的。 Guava 提供的所有 SetMultimap 实现实际上都是可序列化的......只是它们的部分 View 集合不是。

如果您需要序列化这些集合之一,则应将其显式复制到普通集合:

Set<Foo> foo = Sets.newHashSet(multimap.get(someKey));

关于java - Guava SetMultimap 不可序列化(由于不可序列化 WrappedSet),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8488394/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com