9 &和&&的区别

&运算符有两种用法

在解释按位与&之前,我们先了解一个知识:程序中的所有数在计算机内存中都是以二进制的形式存储的,位运算就是直接对内存中整数的二进制位进行操作。

按位与&:是Java中位运算符的一种,它的意思是对二进制进行&运算,只有1&1时结果才是1,其它均为0。

举例说明

当符号两边都为true时,结果才为true;

当符号左边为false时,它依然会执行符号右边的表达式,最终返回false。

注意:很多时候我们可能需要用的是&&而不是&,比如:username != null && !username.equals(“”),如果第一个条件为false,就不能再调用equals方法,要不然会报空指针异常的。

&&运算符是短路与

当符号两边都为true时,结果才为true;

当符号左边为false时,它不会在执行符号右边的表达式,直接返回false。

结果为:

false

false

说明: f1为false,逻辑&依然执行了num1++的操作;f2为false,短路与&&不在执行后边的代码

Java中运算符的分类

算术运算符

赋值运算符

比较运算符

逻辑运算符

位运算符

三目运算符

Original: https://www.cnblogs.com/xilichenbokeyuan/p/14150837.html
Author: 卫盾
Title: 9 &和&&的区别

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/576027/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球