Java常用按位运算符

原创 2012年03月25日 14:51:28

首先,解释下什么是按位运算。按位运算是指先将运算的操作数先分解成二进制位,再根据二进制位进行运算。

我们都知道,计算机只能识别二进制数1和0。因此通常来说,按位运算比普通运算效率快很多。

Java提供的常用按位运算符:

1、按位与运算符(&):

1 & 1 = 1; 1 & 0 = 0; 0 & 1 = 0; 0 & 0 = 0;即只有当参与运算的两个对应二进制位都为1的情况下结果位才为1,否则都为0,类似于逻辑与运算符&&。

2、按位或运算符(|):

1 | 1 = 1; 1 | 0 = 1; 0 | 1 = 1; 0 | 0 = 0;即只有当参与运算的两个对应二进制位都为0的情况下结果位才为0,否则都为1,类似于逻辑或运算符||。

3、按位异或运算符(^):

1 ^ 1 = 0; 1 ^ 0 = 1; 0 ^ 1 = 1; 0 ^ 0 = 0;即只有当参与运算的两个对应二进制位为异(值不同)的情况下结果位才为1,否则为0。

4、按位取反运算符(~):

~1 = 0; ~0 = 1;这是个一元运算符,按二进制位进行“取反”运算。

5、按位左移运算符(<<):

表达式:a << n

<1>a为操作数,n为左移的位数。

<2>将a的各个二进制位左移n位,相当于丢弃a中二进制位的前n位,并向a中二进制位向后补n位。

例如:2 << 2;

2的二进制表示形式为:00000010(只保留8位,前面为0的二进制位已省略);

2左移2位后为:00001000(只保留8位,前面为0的二进制位已省略);

00001000就是2左移2位后的二进制表示结果,用十进制表示为8,即2的3次方。

<3>按位左移的规律总结:

只要操作数a是2的次幂的结果,则a << n 等效于 a  *  2的n次幂;例如:2 << 2  = (2 * 2的二次方) =  8

6、按位右移运算符(>>):

与按位左移运算符相反。

7、按位符合运算符:

a &= b 等效于a = a & b;

a |= b 等效于a = a | b;

a ^= b 等效于a = a ^ b;

a <<= b 等效于a = a << b;

a >>= b 等效于a = a >> b;

这些用法类似于java中的“+=”、“-=”、“*=”、“/=”等复合运算符。


第五讲 转义字符与Java运算符常用讲解

导读 转义字符?—— 其实就是为了迎合用户输入特殊字符的一种字符串处理技术而已。 通常来说,以“\”线开头,然后加上特殊字符,就可以在计算中使用您想要的特殊符号(参与运算)了。 Java...

黑马程序员_Java基础_常用基础内容(进制转换、基本数据类型、运算符、流程控制语句等)

------- android培训、java培训、期待与您交流! ---------- 一、进制转换 参考这篇文章: 二进制、八进制、十进制、十六进制之间转换 注意: 负数的二进制表现形式: 6= ...

Java 之常用运算符(3)

什么是运算符: 运算符是一种“功能”符号,用以通知 Java 进行相关的运算。譬如,我们需要将变量 age 的值设置为 20 ,这时候就需要一个“=”,告诉程序需要进行赋值操作。 Java 语言中...

Java入门 第一季第三章 常用的运算符

3-1 什么是运算符 运算符是一种“功能”符号,用以通知 Java 进行相关的运算。譬如,我们需要将变量 age 的值设置为20,这时候就需要一个“=”,告诉程序需要进行赋值操作。 Java语言中...

JAVA入门第一季-3.常用的运算符

1>Java 语言中常用的运算符可分为如下几种: Ø 算术运算符 Ø 赋值运算符 Ø 比较运算符 Ø 逻辑运算符 Ø 条件运算符2>算数运算符 3>赋值运算符 4>比较运算符 注意哦:...

java位运算符

  • 2015年12月20日 22:03
  • 2KB
  • 下载

java入门第一季_1.4_java中的常用运算符

既然选择了远方,便只顾风雨兼程。 java中常用的运算符 - 算数运算符 - 赋值运算符 - 比较运算符 - 逻辑运算符 - 条件运算符...

C语言常用运算符

  • 2013年01月24日 16:02
  • 85KB
  • 下载

C++常用运算符重载简介

  • 2010年07月27日 21:46
  • 66KB
  • 下载

Java的位运算符详解实例——与(&)、非(~)、或(|)、异或(^)

位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java常用按位运算符
举报原因:
原因补充:

(最多只允许输入30个字)