バイナリリテラルで整数を宣言したいと思います。Javaで可能ですか?
2 に答える
Java 7 以降では、1 つ以上の 2 進数 (0 または 1) が後に続く形式(または) を使用して、整数を 2 進数 として直接表すことができます。たとえば、整数 42 です。8 進数や 16 進数と同様に、2 進数リテラルは負の数を表す場合があります。0b
0B
0b101010
Java 7 を持っていない場合は、これを使用します。
int val = Integer.parseInt("001101", 2);
整数を入力する方法は他にもあります。
1995
、などの 10 進数として51966
。のような負の 10 進数-42
は、実際には単項否定演算を伴う整数リテラルで構成される式です。077 のように、先頭の 0 (ゼロ) 桁と 1 つ以上の追加の 8 進数 (0 から 7 の間の数字) を使用する 8 進数として。8 進数は負の数に評価される場合があります。たとえば
037777777770
、実際には 10 進数値 -8 です。16 進数として、0x (または 0X) の形式を使用し、その後に 1 つ以上の 16 進数 (0 から 9、a から f、または A から F の数字) を続けます。たとえば
0xCAFEBABEL
、長整数 3405691582 です。8 進数と同様に、16 進数リテラルは負の数を表す場合があります。
詳細については、この Wikibook を参照してください。
JDK 7 では、次のことが可能です。
int binaryInt = 0b101;
番号の前に を付けてください0b
。