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