Java中逻辑与,逻辑或,按位与,按位或的区分
来源:互联网 发布:淘宝新手开店一本通 编辑:程序博客网 时间:2024/05/16 05:36
Java中逻辑与,逻辑或,按位与,按位或的区分 Java中逻辑与,逻辑或,按位与,按位或的区分 一直以来,对这样的概念很是模糊,今天总结了一下 先说说逻辑与(&&),逻辑或(||) 他们是短路形式的,举例说明 int i = 0; System.out.println ( i++ == 1 && i++ == 2);//打印false System.out.println (i);//打印1 //这里先判断i++是否等于1,因为是右自增,所以这里i++ == 1是错误的,短路就是说不用执行后面的i++ == 2了, 直接返回一个false,所以这就是最后结果为什么打印1的原因了 i = 0;//这里重新赋值,为了下面的例子明了 System.out.println ( ++i == 1 && i++ == 2);//打印false System.out.println (i);//打印2 //而这里刚好相反,++i是等于1的,所以就执行了后面的i++ == 2,最终的i的值也就打印2了 逻辑与是当两边的运算都为true时,才返回true,否则返回false,如果左边返回false,就直接返回false,不再继续执行右边的代码了 逻辑或是只要有左边的时是true时,就返回true,不再执行右边的代码,但如果左边的值为false,则返回右边运算的结果 按位与& 按位或| 它们和逻辑与,逻辑或是一样的,区别就是非短路运算,即&运算符,即使左边是false,也要执行右边代码;|即使左边是true,也要执行右边代码 还有一点需要指出的区别就是 逻辑与,逻辑或在Java中运算符必须是boolean类型的,而按位与,按位或可以是int类型的, 下面我举例说明他们是如何运行的 System.out.println( 5&3);//(代码1) 打印结果1 System.out.println( 5|3);//(代码2) 打印结果7 System.out.println( 4&2);//(代码3) 打印结果0 System.out.println( 4|2);//(代码4) 打印结果6 二进制码如下: //5 101 4 100 //3 011 2 010 //& 001 000 //| 110 110 按位与的运算: 看注释3对于注释1和2,会发现除了两位都是1的时候,其余情况下&的结果都是0 按位或的运算: 两个数中都为0的时候结果为0,否则结果为1
逻辑与、逻辑或、逻辑非是对boolean值得操作,属于离散数学范畴。按位与、按位或、按位非是对计算机位的操作,属于计算机二进制位运算范畴。逻辑与 都是真才真 c中区分&、&&的区别。逻辑或 有真就是真 c中区分|、||的区别。逻辑非 假才真 c中为!。按位与、按位或、按位非按照上面的规则对每一位进行逻辑运算,其中1代表真0代表假。
- Java中逻辑与,逻辑或,按位与,按位或的区分
- Java中逻辑与,逻辑或,按位与,按位或的区分
- Java中逻辑与,逻辑或,按位与,按位或的区分
- Java中逻辑与,逻辑或,按位与,按位或的区分
- Java中逻辑与,逻辑或,按位与,按位或的区分
- Java中逻辑与,逻辑或,按位与,按位或的区分
- 逻辑或“||”与按位或“|”的区分
- Java 逻辑与 位与 逻辑或 位或
- java 逻辑与,逻辑或,按位与,按位或
- 逻辑或与按位或的区别
- java按位与,按位或,按位异或的逻辑判断
- 逻辑与 按位与 逻辑或 按位或 逻辑非 按位非是什么意思?c++
- 逻辑与 按位与 逻辑或 按位或 逻辑非 按位非
- Java基础:逻辑与或和按位与或的区别
- 位与 逻辑与 位或 逻辑或
- &= 位逻辑与赋值 |= 位逻辑或赋值 ^= 位逻辑异或赋值
- C语言中| 按位或, || 逻辑或。
- java中短路与、逻辑与、短路或、逻辑或
- YUM介绍
- codesmith 连接oracle远程数据库
- 如何恢复SQL Server中删除的数据库
- ios简单使用core data
- ASP.NET中如何使用前台和后台验证
- Java中逻辑与,逻辑或,按位与,按位或的区分
- 平面的坐标系转换
- 如何查看系统内存的消耗情况?(AIX-内存笔记01)
- 数组访问越界的调试现象总结
- Cache-control使用:header('Cache-control:private')
- 年度考核不理想怎么办?
- 聚焦3D地形编程
- EXP常规模式、EXP直接路径模式和EXPDP三种方式导出的性能对比
- 郁闷