&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。
理解:
| : 会检查每一个 条件的真伪,再做“或”运算 (光棍的不怕死)
||: 按照条件写的顺序,直到一个为true时,后面的条件则不再检查,直接进入条件
& : 会检查每一个 条件的真伪,再做“与”运算 (光棍的不怕死)
&&: 按照条件写的顺序,直到一个为false时,后面的条件则不再检查,直接跳出
&是位运算符,表示按位与运算。&&是逻辑运算符,会短路。
例如:
public static void main(String []args)
{
String str=null;
if(str!=null && str.length()==1)
{
System.out.println("sssssss");
}else
{
System.out.println("ccccccccccc");
}
}
打印ccccccc
str为null str!=null结果为false,后面的str.length()==1就不会检查后面的值了,if()中直接返回false。不会报错。
改一下:
public static void main(String []args)
{
String str=null;
if(str==null && str.length()==1)
{
System.out.println("sssssss");
}else
{
System.out.println("ccccccccccc");
}
}
结果:
Exception in thread "main" java.lang.NullPointerException
at edit.main(edit.java:6)
str==null结果为true,则会检查后面的值
&为按位与(AND)
按位与运算符“&”,如果两个运算数都是1,则结果为1。其他情况下,结果均为零。看下面的例子:
00101010 (值为42) & 0001111 (值为15)
00001010 (值为10)
相关推荐
java中的&&与&两者的区别
&和&&都可以用作逻辑与的运算符,表示逻辑与(and),下面就来简单说一下两者的区别。
程序能够实现指针和引用的区别,输出*str,&str和str,使对这三者的区别一目了然。
本文主要介绍了java中&与&&的区别,具有很好的参考价值。下面跟着小编一起来看下吧
使用&后台运行程序: • 结果会输出到终端 • 使用Ctrl + C发送SIGINT信号,程序免疫 • 关闭session发送SIGHUP信号,程序关闭 使用nohup运行程序: • 结果默认会输出到nohup.out ...• 同时免疫SIGINT和SIGHUP信号
&&和&都是表示与,区别是&&只要满足第一个条件,后面条件就不用再做判断了。而&要对所有的条件都进行判断之后再处理。 ||和| 同上,都表示或,区别在于||只要满足第一个条件,后面的条件就不用再做判断了,而|还要...
主要介绍了java中&和&&的区别,在java中比较常见的运算符:&&(短路与)、&、||(短路或)、|,需要的朋友可以参考下
6. TiDB与MySQL的区别 6 7. 可视化工具 17 二、 MYSQL介绍 17 1. MySQL是什么? 17 2. MySQL核心特点 17 3. 数据库类型有哪些? 17 4. MySQL整体架构及工作原理 18 5. MySQL与ORACLE区别 19 6. 可视化工具 38 三、 ...
C++中运算符 &和&&、|和|| 的详解及区别 简介: &&是逻辑与运算符,||是逻辑或运算符,都是逻辑运算符,两边只能是bool类型 &与| 既可以进行逻辑运算,又可以进行位运算,两边既可以是bool类型,又可以是数值类型 ...
官网MA5671&MA5672M&MA5675&MA5675M&MA5673 V800R313C00 Web界面参考
一份总结“指向指针的指针和引用指针变量区别”的精华笔记,很多人对于**p与 *&p的差别不是很清楚,相信这个笔记可以解决你的疑惑。
C++引用&和指针在作为形参时的区别 int n; int &m = n; 在C++中,多了一个C语言没有的引用声明符&,如上,m就是n的引用,简单的说m就是n的别名,两者在内存中占同样的位置,不对m开辟新的内存空间,对m的任何操作,...
结果上没有区别,运算过程中&两边都算,而 && 先算左侧,若左侧为 false 那么右侧就不运算了。 如何区分运算符 | 和 ||,& 和 &&? 首先,我们知道 | 和 & 定义为位运算符,|| 和 && 定义为逻辑运算符。 在区分...
连接运算符的举例说明,+和&的区别,VB6.0源代码
个人总结了scp&ftp&sftp三者的区别以及如何使用
TEM Image&analysis-v410
美国PG&E69;节点系统美国PG&E69;节点配电系统潮流计算原始数据(各节点和支路信息) (US PG & E69 node flow calculation raw data distribution system (each node and branch information))
乌班图&小红帽&CentOS区别.docx
1. 后台执行 一般运行linux上的程序都是执行 .sh 文件(./sh文件),那如果不影响当前CMD窗口的操作,需要后台运行怎么办呢? 这时就需要借助 nohup 和 & 命令来实现。...区别在于 jobs 只能查看当前终端后台