如何序列化用Java实现的链表?
我在网上阅读,可以通过将派生对象声明为瞬时对象来省略它们的序列化。但是,在链接列表的情况下,链接是对象之间的内存引用。那么,我应该将其转换为数组并存储数组表示形式吗?
回答:
这是Java序列化的方式LinkedList
:它获取所有元素并将它们ObjectOutputStream
与大小一起写入。当然要声明header
条目transient
请参阅的writeObject
和readObject
方法LinkedList
:
// Write out any hidden serialization magics.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);
以上是 如何序列化用Java实现的链表? 的全部内容, 来源链接: utcz.com/qa/407835.html