java - 获取可序列化的整理器实例
问题描述
如果我需要使用整理器,我似乎无法序列化 TreeMap。网上真的没有关于它的信息,我似乎无法自己修复它。任何有关如何获得可序列化整理器的帮助将不胜感激。谢谢。
解决方案
这是你需要做的。
使用Serializing Collator instance的答案中给出的包装技术实现一个可序列化的整理器类。(这样做是将实际的整理器保存在一个
transient
字段中,并在包装器反序列化时通过调用来重构它。)Collator.getInstance
创建该类的实例。
实例化将
TreeMap
整理器实例作为构造函数参数传递的类。
您现在应该能够序列化TreeMap
.
请注意,TreeMap
比较器保存在private
未标记为的字段中transient
,并且它正在通过映射private
writeObject
和readObject
方法进行序列化/反序列化。没有干净的方法可以在TreeMap
.
唯一的其他选择是寻找(或创建)比较器被标记为瞬态的树映射的实现,或者Collator
是可序列化的实现。
参考上面的链接,你说:
我试过了,但没有用。
它应该工作。也许你可以告诉我们它是如何不起作用的。你有例外吗?行为不正确?
推荐阅读
- google-apps-script - INDEX-MATCH 公式在 Google 表格中返回相同的值
- css - 如何画出类似梯形的卡片?
- huawei-mobile-services - HMS Map Kit - React Native Marker 问题
- git - 使用来自单个 git 存储库的功能标志管理多个代码库
- python-3.x - Python 3.8.5 FTPS 连接
- xamarin.forms - MapBox 是否支持 Xamarin.Forms (Android/IOS/UWP) 中的室内导航实现?
- javascript - 缓存 - 如何使用它?(在初学者的火力基地中)
- javascript - 在 js 中解决问题
- druid - Apache Druid:当我尝试加载快速启动数据时,我的虚拟机挂起
- javascript - Javascript函数和表达式函数