2010-05-26 85 views
2

或者也许没有区别?数据是相同的,因为我需要保存一个键值,所以在列表的情况下,我将不得不实现KeyValue结构并将其放入列表中。在java中序列化Map或List对象会更高效吗?

+4

亲自试一下吗? – Amber 2010-05-26 02:49:43

+1

可能有区别,但问这个问题让我怀疑你是否真的试图解决不同的问题 – 2010-05-26 03:01:52

+0

@matt b,我有一个多重键值条目,我需要序列化在一个去,我认为最简单的方法是将它们放入列表或地图中,只是想知道哪一个会更有效率? – Dan 2010-05-26 03:08:04

回答

0

如果你想要更高效的序列化,我建议你使用不同的序列化,像hessian。

+0

或使用'Externalizable'手动调整序列化/反序列化过程。 – Yuval 2010-05-26 06:41:52

3

我认为序列化列表的工作量较小,因为它们跟踪地图的次数少于地图,但我不担心它。如果您需要在程序中使用地图,请使用地图,并序列化您用来存储数据的任何数据结构。您不应该根据易于序列化选择您的数据结构,它将会被忽略

2

效率是相同的。除了映射包含密钥和数据外,它有两倍的序列化数据。

但是大哦(O(n))保持不变。使用任何适合您的应用的数据结构,因为从长远来看,差异不会起作用。