java中的|与||,&与&&的区别,与、或,非、异或、位运算
来源:互联网 发布:qq视频播放器 mac 编辑:程序博客网 时间:2024/05/17 06:38
一、java中的|与||,&与&&的区别
其实java中的|与||,&与&&是有区别的,自己调试了下,发现了区别所在具体如下:
if (testA(a)||testA(b))
1、如果是 || 如果testA(b)为true,那么只会执行testA(a)而不执行判断方法testA(b),而 | 则会将testA(a)和testA(b)都去执行一次。
2、如果是 && 如果testA(b)为false,那么只会执行testA(a)判断方法,而& 则会将testA(a)和testA(b)都去执行一次。
您可以用debug模式打断点调试下就知道是否执行了判断方法。
二、下面再细讲讲与、或,非、异或、位运算
//移为运算的计算速度快
int a = 4,b = 2;
//1、&= 与运算 二进制中,只有同为1才是1a &= b;System.out.println("a: "+a);
//2、|= 非运算 二进制中只要一个为1就为1a = 4;b = 2;a |= b;System.out.println("a: "+a);
//3、^= 异或运算 二进制中只要是两者的值不一样那么就是1a = 4;b = 2;a ^= b;System.out.println("a: "+a);
//4、<<= 移位运算 相当于是a = a * Math.pow(2,b);a = 4;b = 2;a <<= b;System.out.println("a: "+a);
//5、>>= 移位运算 相当于是a = a / Math.pow(2,b);a = 4;b = 2;a >>= b;System.out.println("a: "+a);
//6、~ 非运算 二进制所有的位数取反;a = 4;b = 2;a = ~a;b = ~a;System.out.println("a: "+a+" b: "+b);
//7、>>>= 移位运算 二进制统一向右移 b位,左边不管是什么都用0代替,这是与 >>的区别;a = 4;b = 2;a >>>= b;System.out.println("a: "+a+" b: "+b);System.out.println(8>>>1);
1 0
- java中的|与||,&与&&的区别,与、或,非、异或、位运算
- 【Java】Java中的位运算符与、或、非、异或的使用
- Java 位运算符 与(&), 非(~), 或(|), 异或(^)
- Java 位运算(与、或、非、异或)
- java中与或非,异或,位运算
- Java中的位运算(移位、位与、或、异或、非)
- Java中的位运算,包括移位、位与、或、异或、非
- java 位运算符 与或非
- 位运算符-按位与或非异或
- Java的位运算符:与(&)、非(~)、或(|)、异或(^)
- java 的位运算符详解实例 ------与(&) 、或( |) 、非( ~) 、异或( ^)
- Java的按位运算符--&(与)、|(或)、^(异或)、~(非)
- Java的位运算符详解实例-与(&)、非(~)、或(|)、异或(^)
- php中的位运算符 与运算 或 异或 非
- 位运算之 C 与或非异或
- JavaSE005_二进制转换、与或非异或、位运算
- 位运算之C:与、或、非、异或
- 位运算之 C 与或非异或
- H5和Android交互
- Python登陆指定网站并保存Cookie(以登陆SDUTOJ为例)
- 判断广播是否已注册
- 【BZOJ1031】字符加密 后缀数组
- Leetcode - Same Tree
- java中的|与||,&与&&的区别,与、或,非、异或、位运算
- centos7 nginx permission denied while connecting to upstream
- Oracle笔记(十四) 用户管理
- python异常处理
- MySQL数据库的安装和配置图解
- 237. Delete Node in a Linked List
- jquery
- TCP建立连接、传输数据、关闭连接的流程
- Oracle笔记(十五) 数据库备份