&& || 的问题


int i = 0;
System.out.println(i++ < 0 || i++ > 0 && i++ < 0);
System.out.println(i);  //3
System.out.println(true || true && false); //true

问题:这里的i为什么是3

System.out.println(true || true && false); //true

可以看出 && 的优先级高于 ||

i++ < 0 || i++ > 0 && i++ < 0

--->i++ <0 || false    //i=1

--->false    //i=2

程序打印结果为3,个人认为是2,为什么?

月亮岛Superman
浏览 1514回答 1
1回答

marsYun

因为i++在执行运算前,变量i就自增1了
打开App,查看更多内容
随时随地看视频慕课网APP