3
考慮,其存儲在一個數組項[]長度N.使用了多少個字節?
public class MysteryBox { // 16B (object overhead)
private int N; // 4B (int)
private boolean[] items; // 8B (reference to array)
// 24B (header of array)
// N (boolean array of size N)
// 4B for padding
// 17N (boolean objects, 16B of object metadata, 1B of data equivalent to 1 boolean)
...
}
多少字節被用作N的函數(64位存儲器成本模型的布爾類型的 N項類型MysteryBox的目的)?我的答案是否正確?
不是你的問題的直接答案,但可能'java.util.BitSet'可能是存儲這種信息(可能是爲了高效)的好主意。 – 2014-11-05 22:30:32
不應該在64位系統的堆棧上使用64位?還必須加載類元數據,並且該類的每個實例都會消耗堆棧和堆中的內存。 – Hannes 2014-11-05 22:31:01
據我記憶,布爾值被存儲在每個4字節 – njzk2 2014-11-05 22:31:07