JAvaプログラミング思想(第4版)第3章練習問題-10


//2つの定数値を有するプログラムを作成し、1つは交互のバイナリビット1と0を有し、そのうち最低有効ビットは0であり、もう1つは交互のバイナリビット1と0を有するが、その最低有効ビットは1である(ヒント:16進数定数を用いて表すのが最も簡単な方法).この2つの値をとり、ビットオペレータで可能な限り組み合わせて演算し、Interger.toBinaryString()で表示します.
public class BinaryTest {
	static int a = 0x1;
	static int b = 0x0;
	static int c = 0xFFFF;
	public static void main(String []args){
		System.out.println("a = " + Integer.toBinaryString(a));
		System.out.println("b = " + Integer.toBinaryString(b));
		System.out.println("c = " + Integer.toBinaryString(c));
		System.out.println("a&b = " + Integer.toBinaryString(a&b));
		System.out.println("a|b = " + Integer.toBinaryString(a|b));
		System.out.println("~a = " + Integer.toBinaryString(~a));
		System.out.println("~b = " + Integer.toBinaryString(~b));
	}
}

実行結果:
a = 1 b = 0 c = 1111111111111111 a&b = 0 a|b = 1 ~a = 11111111111111111111111111111110 ~b = 11111111111111111111111111111111