运算符 & (与) //两个同时为1,结果为1,否则为0 int a = 10; //对应的二进制为 1010 int b = 11; //对应的二进制为 1011 a=a&b; // a=1010 Console.Write(a) //10 运算符 | (或) //两个同时为0,结果为0,否则为1 int a = 10; //对应的二进制为 1010 int b = 11; //对应的二进制为 1011 a=a|b; // a=1011 Console.Write(a) //11 ^ (异或运算) // 两个位相同则为 0,不同则为1 1010 10 int a = 10; //对应的二进制为 1010 int b = 11; //对应的二进制为 1011 a=a^b; // a=0001 Console.Write(a) //1 ~ Console.WriteLine(~-10+1); //10 public static void swap() { int a = 10; // 1010 int b = 11; // 1010 a = b^a; //0001 b = a^b; // 1010 a = b^a; // 1011 Console.WriteLine(a); Console.WriteLine( b); // 1 & 1010 // 0000 1 if (0==(a&1)) { //为 0 就是偶数,为 1 就是奇数。 } }