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中&&和&以及||和|的区别「建议收藏」
 

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

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

(0)
上一篇 2022年7月8日 上午10:16
下一篇 2022年7月8日 上午10:36


相关推荐

  • Oracle数据库学习心得(一)

    Oracle数据库学习心得(一)1 基本查询语句 select 字段 from 表名 2 算数运算符 3 虚表 dual 专门用于做查询某些表达式的实验 4 空值 或 null 空值和任何值做数学运算结果一定为空 空值和任何值做比较运算结果一定为假 oracle 数据库没有 true 和 false 5 Oracle 不区分大小写 但是标志符区 表名 列名 别名等 分大小写 标志符不加 默认自动转换为大写执行 6 O

    2026年3月26日
    2
  • APK签名机制原理详解

    APK签名机制原理详解众所周知,Android系统在安装Apk的过程中,会对Apk进行签名校验,校验通过后才能安装成功。那你知道签名校验的机制是什么?具体校验的是什么内容吗?申请第三方SDK(如微信支付)时填入的SAH1值是什么?目前众多的快速批量打包方案又是如何绕过签名检验的?我将通过一系列的文章来解开这些疑惑。

    2022年6月14日
    33
  • 箭头函数与普通函数区别

    箭头函数与普通函数区别箭头函数与普通函数区别一 箭头函数是匿名函数 不能作为构造函数 不能使用 new 二 箭头函数内没有 arguments 可以用展开运算符 解决三 箭头函数的 this 始终指向父级上下文 箭头函数的 this 取决于定义位置父级的上下文 跟使用位置没关系 普通函数 this 指向调用的那个对象 四 箭头函数不能通过 call apply bind 方法直接修改它的 this 指向 call aaply bind 会默认忽略第一个参数 但是可以正常传参 五 箭头函数没有原型属性一 箭头函数是匿名函数 不能作为

    2026年3月19日
    2
  • 什么是404页面,如何正确设置制作404页面

    什么是404页面,如何正确设置制作404页面
    什么是404页面?
      404网页是用户尝试访问网站不存在的网页(由于用户点击了损坏的链接、网页已被删除或用户输入了错误的网址)时看到的页面。之所以称为404网页,是因为针对丢失网页的请求,网络服务器会返回404HTTP状态代码,表明该网页未找到。
    404页面的目的是:告诉浏览者其所请求的页面不存在或链接错误,同时引导用户使用网站其他页面而不是关闭窗口离开。
    404对搜索引擎优化seo的影响
      搜索引擎通过HTTP状态码来识别网页的状态。当

    2022年7月27日
    14
  • Qt Quick实现的涂鸦程序

    Qt Quick实现的涂鸦程序

    2022年2月5日
    183
  • 解决VScode按!+Tab无法自动生成HTML模板(最新版方法见文末)

    解决VScode按!+Tab无法自动生成HTML模板(最新版方法见文末)情景再现 使用新建一个文件 然后按 无法实现自动生成代码模板 解决办法 如果最近更新过版本 可能以上方法不再适用 请按照评论区置顶的方法 把之前输入的方法 改为输入再试试 在此感谢 jhhjhgf 等大佬提供的方法

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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