美文网首页
位操作符的运用

位操作符的运用

作者: 慕尼黑凌晨四点 | 来源:发表于2021-07-18 11:06 被阅读0次
操作符 描述 运算规则
位与 如果相对应位都是1,则结果为1,否则为0
| 位或 如果相对应位都是 0,则结果为 0,否则为 1
^ 位异或 如果相对应位值相同,则结果为0,否则为1
位非 按位取反运算符翻转操作数的每一位,即0变成1,1变成0。
<< 左移 按位左移运算符。左操作数按位左移右操作数指定的位数。
>> 右移 按位右移运算符。左操作数按位右移右操作数指定的位数。
>>> 无符号右移 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。
  • 左移

<<n: 乘以2的n次方

  • 右移

>>n:除以2的n次方,取整数部分。

  • 位非
1位: ~1 = 0;
2位 ~01 = 10 = -1 ~10 = 01 = 1
3位 ~001 = 110 = -1 ~010 = 101 = -3
4位 ~0001 = 1110 = -1 ~0010 = 1101 = -3

x的位非结果为:-x-1

  • 输出偶数
for (int i = 0; i < 10; i++) {
    System.out.println(i & ~1);
}

//输出: 0 0 2 2 4 4 6 6 8 8
  • & 判断奇数偶数
for (int i = 0; i < 10; i++) {
    System.out.println(i & 1);
}
//输出:0 1 0 1 0 1

可以用if ((a & 1) == 0) 代替 if (a % 2 == 0)来判断a是不是偶数。

相关文章

  • 位操作符的运用

    操作符描述运算规则&位与如果相对应位都是1,则结果为1,否则为0|位或如果相对应位都是 0,则结果为 0,否则为 ...

  • JavaScript高程读书笔记(2)

    五、操作符 算数操作符、位操作符、关系操作符、 相等操作符 一元操作符++和--:注意a+++,- 位操作符按位非...

  • C语言 key points(extern,auto,type

    关键操作符号:&&: 并且||:或者*:解引用操作符或间接操作符。&: 取地址<<:位bite移符号 左移 :位b...

  • c语言第七讲 操作符和表达式

    目标 操作符介绍 表达式求值 操作符号 操作符的分类 算术操作符 移位操作符 位操作符 赋值操作符 单目运算符 关...

  • 5. 从头学前端之操作符

    操作符包括算术操作符(如加号和减号)、位操作符、关系操作符和相等操作符。 一元操作符 只能操作一个值的操作符叫做一...

  • 位操作

    c++中位操作操作符 这些位操作符只能用于整形的操作,其他会编译报错。位操作符的运算优先级比较低,因为尽量使用括号...

  • ES笔记—基础之操作符篇

    描述:用于操作数据值的操作符,包括算术操作符(如加号和减号)、位操作符、关系操作符和相等操作符。 1、一元操作符 ...

  • JavaScript操作符

    原文 博客原文 大纲 前言1、一元操作符2、位操作符3、布尔操作符(逻辑操作符)4、乘性操作符5、加性操作符6、关...

  • JavaScript基本概念(操作符,语句,函数)

    操作符包括算术操作符、位操作符、关系操作符、相等操作符。操作符一般用于数值型,如果不是数值型会被转换成数值型,对象...

  • 逻辑操作符的运用

    布尔操作符用来测试两个值的关系,十分重要,最常用的就是在if....else中。下面对它的用法做一个简单总结。 一...

网友评论

      本文标题:位操作符的运用

      本文链接:https://www.haomeiwen.com/subject/xbnopltx.html