2016-07-01 42 views
1

我試圖使用一個有符號的long作爲1和0的數組。我需要能夠分配任何位,或長時間讀取任何位。我一直陷入困境,因爲我似乎無法讀取或寫入符號位而沒有弄亂其餘的位(由於二進制補碼)。我可以使用布爾數組來表示1和0,但佔用太多的內存。有沒有人知道一種方法來長期單獨讀取和寫入任何位?或者任何人都可以建議一個超級高效的內存選擇?冗長的讀/寫位

+3

您需要更具體地瞭解您遇到的困難。要獲得有效的替代方法,請查看Java的['BitSet'](https://docs.oracle.com/javase/7/docs/api/java/util/BitSet.html)。 – shmosel

+0

使用前面的評論中建議的位集合類 –

+0

讀取/寫入符號位是絕對好的,它不會弄亂任何東西。兩個補碼並不重要。當然,如果您設置了符號,您應該期望將該值打印爲負值,但這不會影響實際的位數。 – harold

回答