在java中序列化对象的映射或列表是否更有效?
或者可能没有区别?数据是一样的,因为我需要保存一个键值,所以在列表的情况下,我必须实现键值结构并将其放入列表中。我认为序列化列表的工作更少,因为它们比映射需要跟踪的更少,但我不担心它。如果需要在程序中使用映射,请使用映射并序列化用于存储数据的任何数据结构。您不应该基于序列化的易用性来选择数据结构,它可以忽略不计效率是一样的。除了一个映射包含键和数据,所以它有两倍的数据要序列化在java中序列化对象的映射或列表是否更有效?,java,serialization,Java,Serialization,或者可能没有区别?数据是一样的,因为我需要保存一个键值,所以在列表的情况下,我必须实现键值结构并将其放入列表中。我认为序列化列表的工作更少,因为它们比映射需要跟踪的更少,但我不担心它。如果需要在程序中使用映射,请使用映射并序列化用于存储数据的任何数据结构。您不应该基于序列化的易用性来选择数据结构,它可以忽略不计效率是一样的。除了一个映射包含键和数据,所以它有两倍的数据要序列化 但是大oh(O(n))保持不变。使用最适合您的应用程序的任何数据结构,因为从长远来看,差异并不重要。如果您想要更高效的序
但是大oh(
O(n)
)保持不变。使用最适合您的应用程序的任何数据结构,因为从长远来看,差异并不重要。如果您想要更高效的序列化,我建议您使用不同的序列化,如hessian。可能会有所不同,但问这个问题会让我怀疑您是否真的在尝试解决不同的序列化problem@mattb,我有一个多个键值项,我需要一次序列化,我认为最简单的方法是将它们放入列表或映射中,只是想知道哪一个会更有效?@Amber,创建一个好的微基准可能会很棘手,他更想知道实际发生了什么。我建议序列化您的数据,不管它是如何使用的。如果用作列表,则序列化列表;如果用作键值项的映射,则序列化映射。或者使用Externalizable
手动调整序列化/反序列化过程。