我想知道爲什麼當我使用表序列化同一對象內存:序列化相同的對象,觀察不同的結果
ByteArrayOutputStream byteOutput = new ByteArrayOutputStream();
ObjectOutputStream stream = new ObjectOutputStream(byteOutput);
stream.writeObject(m.view()); //view return a string
stream.flush();
stream.close();
byteOutput.flush();
byteOutput.close();
,我跑我的程序好幾次,我得到不同的結果(而不是差異很大,但仍有差異)
execution 1 :4497
execution 3 :4500
execution 4 :4500
execution 5 :4494
m:是一個包含其他類的另一個對象的對象。我不能列出所有的類在這裏,這是一個大的框架,string
序列是一樣的!
什麼是'M'和'overhead'?也許嘗試發佈一個完整的SSCCE(http://sscce.org)? – 2012-04-24 09:06:55
如果大小不完全相同,則對象也不相同。 – 2012-04-24 09:28:12
是相同的大小,相同的是執行,它都一樣:) – Mehdi 2012-04-24 09:36:08