网站首页 > 技术文章 正文
前言
Java中逻辑操作符有&&(与)、||(或)、!(非),按位操作符有&(与)、|(或)、~(非)、^(异或)。它们长得很像,不过它们有很大的区别,逻辑操作符主要面向的是boolean数据的运算,而按位操作符主要是用来操作整数基本数据类型中的单个"比特"(bit),即二进制位。但是,它们也有一些联系,它们都能操作boolean数据,不过并不是完全一致。
&(与)与&&(短路与)的相同与不同
相同点:
在程序中,当所有表达式的判断结果为true时,则结果才为真,返回true,否则,只要有其中一个表达式为假,结果都为false。
不同点:
- & 当前面的表达式为假的时候,程序还是会执行后面的表达式,再得出false结果。
- && 当前面的表达式为假时,程序会停止执行后面的表达式(即短路),结果仍是false。
例如:
输出结果为:
|(或)与||(短路或)的相同与不同
相同点:
在程序中,当有其中一个表达式为true时,结果都为true。
不同点:
- | 当遇到类型为true的表达式时,程序还会继续向后走, 最后结果为true。
- || 当遇到类型为true的表达式时,程序不会向下走,但是最终结果还是true。
例如:
输出结果为:
结语
&(与)与&&(短路与)、# |(或)与||(短路或)都可以操作boolean数据,不过它们有是否短路的区别,这点在开发中需要牢记,对boolean数据的判断,尽量采用逻辑操作符&&(与)、||(或)、!(非)。
猜你喜欢
- 2024-10-26 80迈=80码=80公里?别自己超速了都不知道!
- 2024-10-26 人生路,三不急(人生三不管是哪三不管)
- 2024-10-26 如果事与愿违,请相信一切都会过去
- 2024-10-26 6.5 运算符与表达式(实验1.2.2运算符与表达式)
- 2024-10-26 C语言按位逻辑运算符总结-与、或、非、异或
- 2024-10-26 Excel技巧:你知道&、!、*这三个符号在表格中怎么使用吗
- 2024-10-26 excel公式后面加的&""是什么意思呢?
- 2024-10-26 5、一个&和两个&&的区别
- 2024-10-26 &是什么符号(&是什么符号,代表什么宋声声)
- 2024-10-02 java易用框架&插件集合(持续更新)
- 1517℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 594℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 521℃MySQL service启动脚本浅析(r12笔记第59天)
- 489℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 489℃启用MySQL查询缓存(mysql8.0查询缓存)
- 477℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 456℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 454℃MySQL server PID file could not be found!失败
- 最近发表
-
- PS所有滤镜的说明(六)(ps滤镜详解)
- 5款小白也能用的在线图片编辑器!电商效率飙升就靠它!
- Java变量(java变量有什么作用)
- Java面试常见问题:Java注解(java中的面试题)
- Java编程入门第一课:HelloWorld(java编程从入门到实践)
- Java基础教程:Java继承概述(java里继承的概述)
- java基础之——访问修饰符(private/default/protected/public)
- 如何规划一个合理的JAVA项目工程结构
- 将机器指令翻译成 JavaScript -- 终极目标
- Web 服务器基准测试:Go vs. Node.js vs. Nim vs. Bun
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- c语言min函数头文件 (68)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)