Ich versuche, eine signierte lange als ein Array von 1s und 0s zu verwenden. Ich muss in der Lage sein, jedes Bit in einem langen zuzuteilen, oder jedes Bit in einem langen zu lesen. Ich bleibe stecken, weil ich nicht scheinen kann, um das Zeichenbit zu lesen oder zu schreiben, ohne den Rest der Bits zu verderben (wegen Zweierkomplement). Ich könnte ein boolesches Array verwenden, um die 1s und 0s darzustellen, aber das nimmt zu viel Speicher in Anspruch. Kennt jemand eine Möglichkeit, jedes Bit in einem einzelnen zu lesen und zu schreiben? Oder kann jemand eine supergedächtniseffiziente Alternative vorschlagen?Lesen/Schreiben von Bits von einer langen
1
A
Antwort
1
Für dieses Problem ist BitSet die entsprechende Bibliotheksklasse. Intern wird es mit dem Long implementiert und wächst bei Bedarf mit BigInteger. Für weitere Informationen lesen Sie die javadoc.
Ein Beispielcode in online java ide demonstriert die Verwendung von BitSet.
https://www.codiva.io/p/f6f0ee80-2ad3-4fb6-a197-aa1e549fba80
Verwandte Themen
- 1. Java erhält Bit reicht von einer langen
- 2. Verketten von Bits in C++
- 3. Grep von einer langen Linie
- 4. Wie Bits von Nummer
- 5. LCM von 2 langen langen ganzen Zahlen
- 6. Bits Erhalten von Byte
- 7. C# Aufzählungen von langen
- 8. Behandlung von langen laufenden Berichten
- 9. Drehung von unsigned Char von n Bits
- 10. Verketten von Bits in VHDL
- 11. stahl Bits von einem Zeiger
- 12. Setzen von Bits in C
- 13. Javascript Float von/zu Bits
- 14. Bits Repräsentation von negativen Zahlen
- 15. Ziemlich Formatierung von langen String
- 16. Verkettung von RAM-Bits in Verilog
- 17. Validierung einer langen Eingabe
- 18. Wie kopiert man Bits von einer Variablen in eine andere?
- 19. Ansatz zum Lesen einer beliebigen Anzahl von Bits in Swift
- 20. Regex greifen E-Mail von einer langen Zeichenfolge
- 21. R: Warnung beim Erstellen einer (langen) Liste von Dummies
- 22. Bits von Byte Vars in Delphi manipulieren
- 23. Vim: Toggle-Hervorhebung von langen Linien
- 24. Bits von jQuery1.3.2 zeigt sich als 404
- 25. Vergleichen von langen Strings mit ihren Hashes
- 26. Python3 - verlustfreie Komprimierung von langen verschachtelten Listen
- 27. Wie BitSet als Folge von Bits
- 28. Zeichnen Array von Bits (RGB) in Windows
- 29. Spiegelung von ungeraden Bits eines Registers
- 30. Funktioniert Bit-Shift von Null Bits korrekt?
Sie müssen spezifischere über die Schwierigkeit sein, Sie haben. Eine effiziente Alternative finden Sie in Java [BitSet] (https://docs.oracle.com/javase/7/docs/api/java/util/BitSet.html). – shmosel
Verwenden Sie eine Bit-Set-Klasse wie in den vorherigen Kommentaren vorgeschlagen –
Lesen/Schreiben des Vorzeichen-Bit ist absolut in Ordnung, es wird nichts durcheinander gebracht. Zweierkomplement ist egal. Natürlich sollten Sie erwarten, dass der Wert als negativ gedruckt wird, wenn Sie das Vorzeichen setzen, aber das hat keinen Einfluss auf die tatsächlichen Bits. – harold