Java中&&和&以及||和|的区别「建议收藏」

Java中&&和&以及||和|的区别「建议收藏」在java的逻辑运算符中,有这么四类:&&(短路与),&(与),|(或),||(短路或)。&&和&都是表示与,区别是&&只要满足第一个条件,后面条件就不再判断。而&要对所有的条件都进行判断。看下面的程序:“&”操作:publicclassOperateDemo01{/**验证"与"…

大家好,又见面了,我是你们的朋友全栈君。

在java的逻辑运算符中,有这么四类:&&(短路与),&(与),|(或),||(短路或)。

&&和&都是表示与,区别是&&只要满足第一个条件,后面条件就不再判断。而&要对所有的条件都进行判断。

看下面的程序:

“&”操作:

public class OperateDemo01{
/**
  验证"与" 操作
  说明:"与" 操作 要求所有条件都判断一遍
*/
public static void main(String args[]){

if(10!=10&10/0==0){
/*10!=10这个条件返回false
  10/0==0这个地方会抛出异常(java.lang.ArithmeticException: /by zero)
  由于与操作所有条件都需要判断 所以在10/0的时候会出现错误
*/
System.out.print("条件满足!");
}
}
}

运行结果:

Java中&&和&以及||和|的区别「建议收藏」
 修改下代码:

“&&”操作:

public class OperateDemo02{
/**
  验证"短路与 &&" 操作
  说明:"短路与 &&" 操作如果第一个条件不满足 那么后面的条件就不用再判断了
*/
public static void main(String args[]){

if(10!=10&&10/0==0){
/*10!=10这个条件返回false
  由于第一个条件就不满足 所以10/0==0这个条件就不必再判断了
*/
System.out.print("条件满足!");
}
}
}

 运行结果:

Java中&&和&以及||和|的区别「建议收藏」
 

 ||(短路或)和|(或)都是表示“或”,区别是||只要满足第一个条件,后面的条件就不再判断,而|要对所有的条件进行判断。

看下面代码:

“||”操作

public class OperateDemo03{
/**
  验证"短路或 ||" 操作
  说明:"短路或 ||"  如果第一个条件为true 则后面的条件则不再判断
*/
public static void main(String args[]){

if(10==10||10/0==0){
/*10==10这个条件返回true
  由于第一个条件满足 所以10/0==0这个条件就不必再判断了
*/
System.out.print("条件满足!");
}
}
}

 运行结果:

Java中&&和&以及||和|的区别「建议收藏」
 修改下代码:

“|”操作

public class OperateDemo04{
/**
  验证"或 |" 操作
  说明:"或 |" 所有条件都要求判断
*/
public static void main(String args[]){

if(10==10|10/0==0){
/*
虽然10==10 返回true 但是10/0==0这个条件是会抛出异常错误
所以当判断到第二条件是就会抛出异常
*/
System.out.print("条件满足!");
}
}
}

 运行结果:

Java中&&和&以及||和|的区别「建议收藏」
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/157030.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • ios屏幕旋转设置_旋转平移和缩放

    ios屏幕旋转设置_旋转平移和缩放目录(?)[-]一如何设置AnchorPoint二如何获得AnchorPoint经常会遇到需求,要求手势的缩放或者旋转操作,要求动作变化围绕某一个特定点,或者是两指的中心点,或者是某一个点。这个问题首先要清晰的知道,iOS各个view的层次关系。特别是,要清楚的知道,当前view的frame与superView的bounds是一个坐标

  • the section of the README devoted to missing data problems[通俗易懂]

    the section of the README devoted to missing data problems[通俗易懂]the section of the README devoted to missing data problems

  • PYQT5 pycharm 编程环境和环境变量配置[通俗易懂]

    PYQT5 pycharm 编程环境和环境变量配置[通俗易懂]基本的环境配置

  • WebRTC之ICE服务器coturn安装及部署

    WebRTC之ICE服务器coturn安装及部署GitHub:https://github.com/coturn/coturn一、安装sudoapt-getinstallcoturn

  • 大数据理论体系

    大数据理论体系目录结构大数据是什么?大数据是如何发展起来的?大数据处理的基本流程是什么?为什么说数据不动代码动?移动计算比移动数据更划算?DAG对大数据处理有什么好处?批处理和流处理如何区分?有边界数据和无边界数据如何区分?批处理中如何提高CPU利用率?什么是事件时间和处理时间?Workflow设计模式指的什么?什么是商业智能(BI)?分布式锁是什么?如何实现?分布式事务是什么?如何实现?分布式锁和分布式事务有什么区别?CAP定理是什么?BASE理论是什么?分布式系统有哪些衡量指标?

  • CSS3中如何解决子元素继承父元素的opacity属性[通俗易懂]

    CSS3中如何解决子元素继承父元素的opacity属性[通俗易懂]问题css3中的opacity属性是用来设置div元素的不透明级别的,但是我们往往会遇到因为父级元素设定opacity后,子元素也跟着透明了,但是有时候我们只是想让背景是透明的,这该如何解决呢?错误的示例我们常常想到的方法是直接给子元素的opacity设定为1,如下:<!DOCTYPEhtml><html><head><metacharset=”utf-8″><title>opacity</title&g

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号