java &与&& |与||的区别
一、与操作和或操作的区别
(1)在Java程序中,使用与操作,要求所有表达式的判断结果都是TRUE,才为真,若有一个为FALSE,那么最终判断结果则为FALSE
(2)使用或操作,只要其中有一个表达式为TRUE,那么最终的结果就为TRUE,只有当所有的表达式为FALSE时最终结果才为FALSE
二、&与&&,|与||的区别
(1)&与&&
在程序中,&与&&的区别在于:
a.使用&时,当前面的表达式为假的时候,程序依旧会继续执行后面的表达式,然后再得出FALSE的结果,代码如下:
public class Test {
public static void main(String[] args) {
int i=0;
if(10!=10&(i++)==1){ }else{
System.out.print("结果为假 "+i);
}
}
}
结果如下:
b.当使用&&(短路与)时,则相反,当前面的表达式结果为假时则不会再执行后面的表达式,直接得出FALSE的结果,代码如下:
public class Test {
public static void main(String[] args) {
int i=0;
if(10!=10&&(i++)==1){ }else{
System.out.print("结果为假 "+i);
}
}
}
结果如下:
(2)|与||的区别
a.当使用|时,若前面的表达式为真时,程序会继续执行后面的表达式,然后在得出TRUE的结果,代码如下:
public class Test {
public static void main(String[] args) {
int i=0;
if(10==10|(i++)!=0){
System.out.print("结果为真 "+i);
}else{
}
}
}
结果如下:
b.当使用||(短路或)时,若前面的表达式结果为真,则程序不会再执行后面的表达式,直接得出TRUE的结果,代码如下:
public class Test {
public static void main(String[] args) {
int i=0;
if(10==10||(i++)!=0){
System.out.print("结果为真 "+i);
}else{
}
}
}
结果如下:
java &与&& |与||的区别的更多相关文章
- java.lang.ClassNotFoundException与java.lang.NoClassDefFoundError的区别
java.lang.ClassNotFoundException与java.lang.NoClassDefFoundError的区别 以前一直没有注意过这个问题,前两天机缘巧合上网查了一下,然后自 ...
- java 和javaw 的区别——<转>
java 和javaw 的区别 javaw.exe用法和java.exe 相同 javaw的程序不在java console 上面显示任何东西,如果在开发程序,就用java,这样可以看到错误提示, 如 ...
- java与javac的区别
1.前提:java分为两部分 一个是编译(javac命令),一个是运行(java命令) 2.java与javac的区别 javac负责的是编译,将.java文件编译成.class文件,当执行javac ...
- Java中equal和==区别及String创建过程
Java中equal和==区别 1.起因 在一段Java代码中,使用了两种实现方式. //第一种命令行输入 int main (String[] args) { if(args[0] == " ...
- Objective-C与Java类的一些区别
Objective-C与Java类的一些区别 OC类和C一样,需要有声明和定义,先上一段OC代码 #import <Foundation/Foundation.h> /* * 声明一个Pe ...
- java与javax的区别分析(转)
Java是一种受C语言影响的编程语言.Java和Javax本质上是与Java编程语言的上下文一起使用的包.实际上Java和Javax没有区别.这只是不同的名字. Java是一种编程语言,受到C语言的影 ...
- JAVA线程和进程区别
1,JAVA线程和进程区别? (1)简单来讲一个运行的程序就是一个进程,一个进程中可以有多个线程(线程是程序执行的最小单元). (2)线程有四种状态:运行,就绪,挂起,结束 (3)使用多线程的好处 使 ...
- Java HSSFworkbook,XSSFworkbook,SXSSFworkbook区别简述
Java HSSFworkbook,XSSFworkbook,SXSSFworkbook区别简述 一.HSSFworkbook,XSSFworkbook,SXSSFworkbook区别简述 用Java ...
- Dalvik VM (DVM) 与Java VM (JVM) 的区别?
Dalvik虚拟机存在于Android系统,JVM是java虚拟机,两者都是虚拟机,本文就对两者进行比较,讲述它们的不同. Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的 ...
- Java 中>>和>>>的区别
Java 中>>和>>>的区别 Java中的位运算符: >>表示右移,如果该数为正,则高位补0,若为负数,则高位补1: >>>表示无符号右移 ...
随机推荐
- vue 回到页面顶部
模仿Element-UI 回到页面顶部 BackToTop.vue <template> <transition :name="transitionName"&g ...
- 04-创建kubeconfig认证文件
本文档记录自己的学习历程! 创建 kubeconfig 文件 kubelet.kube-proxy 等 Node 机器上的进程与 Master 机器的 kube-apiserver 进程通信时需要认证 ...
- CSS实现无外边框列表效果
方法一:使用外层容器切割 给每一个 li 设定右边框和下边框线 把ul放置在一个外层div中,设定div的宽高,通过overflow:hidden将一部分li的边框隐藏 此方法只需要计算父容器的宽高, ...
- flex 实例 豆瓣手机端布局实现
0.最终成品
- Dynamics 365-关于Solution的那些事(三)
这一篇的内容,是关于Solution的使用建议的,如果大家有什么实用的建议,欢迎留言讨论. 一. 版本控制 Solution是有版本号的,率性的人可能在新建一个solution的时候,直接赋值1.0, ...
- 44.Odoo产品分析 (五) – 定制板块(1) – 管理odoo安装(1)
查看Odoo产品分析系列--目录 1 管理员的注意事项 在记录重要的配置细节时必须要小心,而且必须要有一个连续性的合适的.让系统能够安装备份并运行在一个可接受的时间内的计划. 1.1 制定实施策略 如 ...
- 安卓5.0系统怎么无Root激活XPOSED框架的方法
在大多团队的引流或业务操作中,基本上都需要使用安卓的强大Xposed框架,几天前,我们团队买来了一批新的安卓5.0系统,基本上都都是基于7.0以上系统,基本上都不能够获得Root的su权限,纵然一些能 ...
- 如何去掉(隐藏)系统的StatusBar(状态栏)
在定制TV版本中,经常需要去掉StatusBar的需求,那么如何更好更方便的去掉StatusBar呢? StatusBar是Android系统中重要的组成部分,可以看到一些提 ...
- 理解SignalR
ASP .NET SignalR 是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现即时通信(即:客户端(Web页面)和服务器端可以互相实时的通知消息及调用方法),即时通讯W ...
- Codeforces #548 (Div2) - D.Steps to One(概率dp+数论)
Problem Codeforces #548 (Div2) - D.Steps to One Time Limit: 2000 mSec Problem Description Input Th ...