ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

位运算符

2022-08-15 21:01:06  阅读:136  来源: 互联网

标签:运算 num2 运算符 num 按位 赋值


Java 定义的位运算(bitwise operators)直接对整数类型的位进行操作,这些整数类型包括 long,int,short,char 和 byte。【&和|应用在布尔值上时,也会得到一个布尔值,和&&,||很类似,不过不采用“短路”方式来求值】

位运算符主要用来对操作数二进制的位进行运算。按位运算表示按每个二进制位(bit)进行计算,其操作数和运算结果都是整型值

这意味着可使用掩码技术得到整数中的各个位。

  • Java 语言中的位运算符分为位逻辑运算符位移运算符

  • 位逻辑运算符包含 4 个:&(与)、|(或)、~(非)和 ^(异或)。除了 ~(即位取反)为单目运算符外,其余都为双目运算符。下表列出了它们的基本用法。

    运算符 含义 实例 结果
    & 按位进行与运算(AND) 4 & 5 4
    | 按位进行或运算(OR) 4 | 5 5
    ^ 按位进行异或运算(XOR) 4 ^ 5 1
    ~ 按位进行取反运算(NOT) ~ 4 -5
  • 位逻辑运算符详细解释

    • 位与运算符

      位与运算符为&,其运算规则是:参与运算的数字,低位对齐,高位不足的补零,如果对应的二进制位同时为 1,那么计算结果才为 1,否则为 0。因此,任何数与 0 进行按位与运算,其结果都为 0。

    • 位或运算符

      位或运算符为|,其运算规则是:参与运算的数字,低位对齐,高位不足的补零。如果对应的二进制位只要有一个为 1,那么结果就为 1;如果对应的二进制位都为 0,结果才为 0。

    • 位异或运算符

      位异或运算符为^,其运算规则是:参与运算的数字,低位对齐,高位不足的补零,如果对应的二进制位相同(同时为 0 或同时为 1)时,结果为 0;如果对应的二进制位不相同,结果则为 1

    • 位取反运算符

      位取反运算符为~,其运算规则是:只对一个操作数进行运算,将操作数二进制中的 1 改为 0,0 改为 1。

  • 位移运算符

  • 所有的二进制位运算符都有一种将赋值与位运算组合在一起的简写形式。复合位赋值运算符由赋值运算符与位逻辑运算符和位移运算符组合而成。表 3 列出了组合后的复合位赋值运算符。

    运算符 含义 实例 结果
    &= 按位与赋值 num1 &= num2 等价于 num 1=num 1 & num2
    |= 按位或赋值 num1 |= num2 等价于 num 1=num 1 | num2
    ^= 按位异或赋值 num1 ^= num2 等价于 num 1=num 1 ^ num2
    -= 按位取反赋值 num1 -= num2 等价于 num 1=num 1 - num2
    «= 按位左移赋值 num1 «= num2 等价于 num 1=num 1 « num2
    »= 按位右移赋值 num1 »= num2 等价于 num 1=num 1 » num2

标签:运算,num2,运算符,num,按位,赋值
来源: https://www.cnblogs.com/yu-zexin/p/16589605.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有