小编典典

如何序列化用Java实现的链表?

java

我在网上阅读,可以通过将派生对象声明为瞬时对象来省略它们的序列化。但是,在链接列表的情况下,链接是对象之间的内存引用。那么,我应该将其转换为数组并存储数组表示形式吗?


阅读 497

收藏
2020-11-26

共1个答案

小编典典

这是Java序列化的方式LinkedList:它获取所有元素并将它们ObjectOutputStream与大小一起写入。当然要声明header条目transient

请参阅的writeObjectreadObject方法LinkedList

// Write out any hidden serialization magic
s.defaultWriteObject();

// Write out size
s.writeInt(size);

// Write out all elements in the proper order.
for (Entry e = header.next; e != header; e = e.next)
    s.writeObject(e.element);
2020-11-26