倒数第二位? int has 32 bits, Do you mean 倒数第二bit位?
int i=11;  //1011
i & 0xfffffffd  //倒数第二bit位置0, result is 9
i=8; //1000
i | 0x02        //倒数第二bit位置1, result is 10

解决方案 »

  1.   

    要设置哪一位为1的话,使用 '|' 运算符;
    要设置哪一位为0的话,使用 '&' 运算符。
    例子:
    o 把一个整数低24为设置为全0,高八位保持不变:
      Random rd = new Random();
      int x = rd.nextInt(100);
          x &= 0xff000000;
    o 把一个整数的第七位设置为1,其余位保持不变:
      Random rd = new Random();
      int x = rd.nextInt(100);
          x |= 0x80;
      

  2.   

    是呀,在java中,尤其是位操作中,和c有很大的相同,建议看看书,学得系统一点。