バイト データ型として宣言された値を 8 ビットの文字列に変換する必要があります。これを行うことができるJavaライブラリメソッドはありますか? たとえば、-128 を取り込んで「10000000」を出力する必要があります。また、入力 -3 は "11111101" になるはずです。(私はこれらを手動で変換しました。)
これが何度も回答されていると考える前に、私が混乱している理由を説明させてください.
「バイト」という名前は少しあいまいです。そのため、他の回答に従うのは困難でした。私の質問では、 8 ビットを取り、値の範囲が -128 から 127のJava データ型byte
を参照しています。また、「バイトの配列」という意味でもありません。私の質問は、単一の値を 8 ビット表現のみに変換することです。これ以上何もない。
私はこれらを試しました:
byte b = -128; //i want 10000000
Integer.toBinaryString(b); //prints 11111111111111111111111110000000
Integer.toString(b, 2); //prints -10000000
組み込みの方法がない場合は、何かアプローチを提案できますか (おそらくビットシフト)?