java ++ -- 异或 短路与 短路或 三目条件
2017-06-03 12:02
316 查看
public class Demo { public static void main(String[] args) { int i1 = 12, i2 = 20; int i = (i2++); System.out.print("i = " + i); System.out.println(" i2 = " + i2); i = (++i2); System.out.println("i = " + i); System.out.println("i2 = " + i2); } }
输出:
i = 20 i2 = 21
i = 22
i2 = 22
总结:
++(- -)
在前时先运算再取值
在后时先取值再运算
异或:
0^0=0
0^1=1
1^0=1
1^1=0
假^假=假
假^真=真
真^假=真
真^真=假
简单来说,相同为0,不同为1;相同为假,不同为真。
短路与:
a&&b:只有a与b都为true,结果才为ture;有一个为false,结果为false。
所谓短路,即在第一项为false的情况下,cpu不再进行第二项的判断。
短路或:
a||b:只有a与b都为false,结果才为false;有一个为true,结果为true。
所谓短路,即在第一项为true的情况下,cpu不再进行第二项的判断。
示例:
String str = null; System.out.println(null == str || a.isEmpty());
在该段代码中,由于第一项null == str为true,所以无论第二项的结果是true还是false都不影响整体的结果;若此处为”|”非短路与,则第二项执行时必定会报空指针错误。这就是短路或与非短路或的区别。
所以在Java编程中,对于&&和||,Java只看第一个操作数的值,对于&&,如果第一个值为false,那么第二个不再计算,如果第一个值为true,那么还要计算第二个值;对于||,如果第一个值为false,那么还要计算第二个值,如果第一个值为true,那么第二个值不再计算;对于&和|操作符,两边无论如何都计算。
三目条件:
例子:
min=(a<b)?a:b; 解释:如果a<b成立 则min=a 将a的值赋值给min 否则将b的值赋值给min
相关文章推荐
- java 逻辑运算符 短路(条件操作)
- java学习 五、条件语句 三目运算
- java 逻辑运算符 短路(条件操作)
- JAVA 基础语法(三)——三目(条件)运算符以及分支语句
- 黑马程序员-----java基础之运算符----与(&)、或(|)、非(!)、异或(^)、短路与(&&)等
- java三目条件运算符
- Java_13_运算符_二元运算符_取模运算_一元运算符_布尔逻辑表达符_位运算符_扩展运算符_三目条件运算符_运算符优先级
- Java 语法介绍(五):条件控制
- JAVA学习小节……循环中的思考和条件
- 条件(三目)运算符 (?:)
- 成为java高手的八大条件
- Effective Java(2nd Edition) Item 57 仅为例外条件使用异常(译文)
- 成为java高手的八大条件
- Java中的条件编译
- 在java中如何约束条件限制文本框接受的字符
- ASP函数-条件(三目)运算函数
- GeneXus + java +Oracle 中 for each 的 where 条件中 对isEmpty() 和isNull()的本质区别
- 条件(三目)运算符 (?:)
- 成为JAVA高手的八大条件(转载)
- 成为java高手的八大条件