如何序列化在java中实现的链表?

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

以下是Java序列化LinkedList :它获取所有元素并将它们与大小一起写入ObjectOutputStream 。 当然,声明headertransient

请参阅LinkedListwriteObjectreadObject方法:

 // 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);