永发信息网

java 小题

答案:4  悬赏:60  手机版
解决时间 2021-03-10 14:08
class C {
public static void main(String[] args) {
int i = 1;
boolean b = false;
if(b && ++i == 2) {
System.out.print(“first ” + i);
} else {
System.out.print(“second ” + i);
}
}
}
打印结果为什么是 second 1
if那句里不已经++i了吗?用得还是&&
最佳答案
这里主要是"&&"的问题."&&"和"&"是不同的.
"&&"的时候,如果左边为false的话,那么右边就不执行了;如果左边为true那么右边还是会执行的.
"&"的时候,不管你左边为true还是false,右边都会执行.

在你的代码当中是"&&"而且左边b为false,所以右边不执行(++i==2不执行),直接跳到
} else {
System.out.print(“second ” + i);
}
中,此时i还是原来的1.
全部回答
呵呵,我给你讲讲与&&和或||的关系,你就明白了 java中明确规定: 与&&,当&&两边的变量或者表达式,如果前面一个是假的话,后面的肯定不会执行,如果前面一个是真的话,后面的肯定会执行。 或||,当签名一个为真的时候,后面的就不用执行,前面一个为假的时候,才会执行后面的一个。 我想,我这里的真假,不用再给你解释是什么意思了吧。
B是FALSE && 是截断的 当有一个FALSE 往后就不做判断了! 好好看看JAVA基础
a
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
宝应到姜堰的车次及票价?
歌词里有打起了锣鼓唱秧歌是那首歌
包商银行微贷业务
打篮球有哪些规则
涌鑫公寓我想知道这个在什么地方
QQ飞车蓝色雪怪出现在琳琅镇和琳琅湾哪个图几
新疆喀什地区能上那个4G网?联通,移动,还是
以前用的移动,现在改成了电信,无线路由器怎么
20162017期末七年级考试成绩单
求开平碉楼一日自助游路线
脸上有汗毛激光去痘印汗毛会不会越长越快
丝场地址在什么地方,想过去办事
bt151 500R和600R有什么区别?
手机QQ输入法有韩语吗
【什么是重症肌无力】重症肌无力的Osserman分
推荐资讯
行政规章通常分为()
撇了丝怎么做如何做好吃
竞聘食堂装饭人的作文
湖南工业大学体育学院的住宿条件怎么样
新埠村民委员会这个地址在什么地方,我要处理
我想知道苹果六s 序列号FFMSJ4AGGRY7 是真是
北海市哪条路有母婴用品店??
顺丰快递订单号查不出来,而且单号14位???
【四年级下册品德试卷】求助2018年小学知识与
冒险岛从冰封雪域怎么到天空之城啊?急急
苹果手机的王者荣耀怎么在电脑上玩
网站的优化对于网站的好处有什么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?