2015-06-13 31 views
0

我有一個名爲out的變量,即BigInteger。 當試圖使用爲什麼從'bitLength'報告中保存'BigInteger'的大小有所不同?

out.bitLength(); 

得到這個變量的長度在比特接收。

如果我使用

ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("./testBig.dat")); 
oos.writeObject(out); 
oos.close(); 

保存這個文件,我得到一個文件,是208字節

有人可以向我解釋爲什麼這兩個值有所不同嗎?

+3

一個是代表變量值的位數,另一個是包含變量本身的序列化值(這是一個類)的文件的大小 - 基本上所有需要重新創建活動副本的東西被序列化的變量。他們幾乎完全不相關。你只是想將變量的值寫入文件嗎? – fvu

+0

你甚至看過文件的內容嗎? – Glorfindel

+1

這兩個數字只有切線相關。 –

回答

相關問題