Wenn Sie nur die String-Repräsentation davon in binärer Form benötigen, können Sie einfach Integer.toString()
mit dem optionalen zweiten Parametersatz für binary auf 2 setzen.
Um ein allgemeines Bit-Twiddling für jeden Integraltyp durchzuführen, müssen Sie logische Operatoren und Bitshiftoperatoren verwenden.
%Vor%Sie finden unter http://guava-libraries.googlecode.com/svn/trunk/javadoc/com/google/common/primitives/package möglicherweise ähnliche Informationen -summary.html "> Guava Primitives Paket.
Alternativ können Sie etwas wie
schreiben %Vor% Das ist nicht getestet, aber die Idee ist da. Es gibt auch einfache Änderungen an den Schleifen / Zuweisungen, um ein Array von etwas anderem zurückzugeben (zB int
oder long
).
BitSet.valueOf (Byte [] Bytes)
Sie müssen sich vielleicht den Quellcode ansehen, wie er implementiert wird, wenn Sie nicht Java 7 verwenden
Java hat bitwise operators
. Siehe ein Tutorial-Beispiel .
Die Java-Programmiersprache stellt auch Operatoren bereit, die bitweise und Bit-Shift-Operationen an integrierten Typen ausführen. Die in diesem Abschnitt besprochenen Operatoren werden weniger häufig verwendet. Daher ist ihre Abdeckung kurz; Die Absicht ist, Sie einfach darauf aufmerksam zu machen, dass diese Operatoren existieren.
Der unäre bitweise Komplementoperator "~" invertiert ein Bitmuster; Es kann auf jeden der Integraltypen angewendet werden, wobei jede "0" eine "1" und jede "1" eine "0" wird. Zum Beispiel enthält ein Byte 8 Bits; durch Anwenden dieses Operators auf einen Wert, dessen Bitmuster "00000000" ist, würde sein Muster in "11111111" geändert werden.
A byte
value Ist ein Integral, Sie können den Bitzustand mithilfe von Maskierungsoperationen überprüfen.
Das niedrigstwertige Bit entspricht der Maske 1
oder 0x1
, das nächste Bit entspricht 0x2
usw.
Nun, ich denke, ich verstehe, was du meinst. Nun ist ein ziemlich wesentlicher Fehler darin, dass es bei negativen Zahlen nicht funktioniert. Aber vorausgesetzt, Sie verwenden es nicht zum Lesen von Dateieingaben, können Sie es dennoch verwenden.
%Vor%Tags und Links java