[英]Memory usage of a char array with null values in Java
我正在嘗試計算 java 中 trie 搜索樹實現的內存使用情況。 每個節點都包含一個大小為 52 的 char 數組,其中許多索引為空值。 我知道數組的內存消耗以及數組中的每個字符,但我不確定空值的內存消耗。 據我了解,JVM 為 char 和對它的引用保留空間,即使是 null 也是如此。 這理解正確嗎? 然后數組中的空值將占用多少字節,就像該索引上可用的 char 一樣?
將數組轉換為 arrayList 是不可能的,我不尋求優化內存使用的建議,只尋求計算所述空值的內存使用的建議。
如果需要,我會很樂意回答任何問題!
char
的大小始終為 16 位,請參閱https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Character.html#SIZE 。 數組的長度乘以元素大小加上數組對象頭的(Java 虛擬機實現相關)大小等於已用內存量。
正如@Mark Rotteveel 所說, null
不是有效的char
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.