Java 实例说明 &&和&的区别
来源:互联网 发布:面试官面试技巧知乎 编辑:程序博客网 时间:2024/06/06 18:48
&和&&的区别 通过实例一眼就可以看出来:
int x = 11,y = 11;
if(x++>11 & y++>11) {
}
System.out.println(x + " " + y);
运行结果: 12 12
int x = 11,y = 11;
if(x++>11 && y++>11) {
}
System.out.println(x + " " + y);
运行结果: 12 11
拓展:
&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。
&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式,
例如,对于if(str != null && !str.equals(“”))表达式,当str为null时,后面的表达式不会执行,所以不会出现NullPointerException 如果将&&改为&,则会抛出NullPointerException异常。
String str = null;if (str != null && !str.equals("")) {}System.out.println(str);
运行结果:null
String str = null;if (str != null &!str.equals("")) {}System.out.println(str);运行结果:Exception in thread "main" java.lang.NullPointerException注意:逻辑或运算符(|)和短路或运算符(||)的差别也是如此。
补充:如果你熟悉JavaScript,那你可能更能感受到短路运算的强大,想成为JavaScript的高手就先从玩转短路运算开始吧。
1 0
- Java 实例说明 &&和&的区别
- Java实例说明 静态变量和实例变量的区别
- Java实例说明 静态方法和非静态方法的区别
- 实例说明图像的灰度化和二值化的区别
- 实例说明图像的灰度化和二值化的区别
- 以实例来说明strlen()和sizeof()的区别
- 实例说明get_cfg_var()和ini_get()的用法及区别
- 实例说明<<PostMessage和SendMessage函数的区别>>
- 说明类变量和实例变量的区别
- 实例说明js脚本语言和php脚本语言的区别
- Java对象和实例的区别
- java Static和实例化的区别
- JAVA反射机制的简单实例和说明
- Java实例说明 接口和抽象类的恩恩怨怨
- 一个例子说明C语言和Java的区别
- Java中说明private,protected,public和default的区别
- Java中静态变量和实例变量的区别?&和&&
- Java中静态变量和实例变量的区别?&和&&
- 内功心法 -- java.util.ArrayList<E> (1)
- Hibernate 一对一外键双向关联
- 国密SKF接口函数介绍之三:应用管理函数
- 搜索框智能提示ajax
- kafka增加topic 的partitions数量
- Java 实例说明 &&和&的区别
- java.lang.ClassCastException: oracle.sql.CLOB cannot be cast to oracle.sql.CLOB
- Lambda表达式
- MySQL数据库多表查询
- 优化UITableViewCell高度计算的那些事
- Keil代码整体偏移和查找功能
- TestNG入门——注解之@Test
- LeetCode 6. ZigZag Conversion(Python)兼翻译
- oracle导入空间数据