java中if条件里面判断boolean值判断的true还是false?
请教下面这个题,会走if,我运行的是会了第一个输出a,但if里面判断的不是true吗?第一个里面我理解的是当a和b都不是true时,输出C,我觉得第二个才应该走啊,当a或...
请教下面这个题,会走if,我运行的是会了第一个输出a,但if里面判断的不是true吗?第一个里面我理解的是当a和b都不是true时,输出C,我觉得第二个才应该走啊,当a或者b不是true时,输出b,为什么走了第一个if,而且我把第一个if给注销掉,第二个if也没用,直接走第三个else了?为什么呢?java中if条件里面判断boolean值判断的true还是false?
boolean a=true,b=false;
if(!(a&&b)){
System.out.print("a");
}
else if(!(a||b))
{
System.out.print("b");
}
else
{
System.out.print("c");
} 展开
boolean a=true,b=false;
if(!(a&&b)){
System.out.print("a");
}
else if(!(a||b))
{
System.out.print("b");
}
else
{
System.out.print("c");
} 展开
5个回答
展开全部
哈哈,这个if(!(a||b))你理解错了,a 和b都为false才会走的
"双或"以及"或",只要有一个为true结果就为true
"双或"以及"或",只要有一个为true结果就为true
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先(a&&b)应该是false,然后再取反则是true,所有第一个if会执行.
这个主要是是(a&&b)这句话,是要a和b都为真才为真,这里a=true,b=false.所以(a&&b)自然是false,然后再将这个false取反不就是true了,所以会执行第一条if.
这个主要是是(a&&b)这句话,是要a和b都为真才为真,这里a=true,b=false.所以(a&&b)自然是false,然后再将这个false取反不就是true了,所以会执行第一条if.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
为什么要写这么乱的判断
boolean aAndB = a&&b //----false
if(!aAndB) { //-----true
}
boolean aAndB = a&&b //----false
if(!aAndB) { //-----true
}
追问
软考的题!
追答
不管是什么,题可以这么出,但是代码这么些就很不好了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
boolean a=true,b=false;
if(!(a&&b))// a&&b=false,!(false)=true;也就是条件成立 就运行 输出 a.
{
System.out.print("a");
}
else if(!(a||b))//a||b=true;!(true)=false假如程序到这里了,但是条件不成立,则不会执行后面的语句 输出 b
{
System.out.print("b");
}
else
{
System.out.print("c");
}
对于if()语句的理解是:
if(条件){
语句1
}
else{
语句2
}
当条件=true时执行语句1;条件=false时,执行语句2
if(!(a&&b))// a&&b=false,!(false)=true;也就是条件成立 就运行 输出 a.
{
System.out.print("a");
}
else if(!(a||b))//a||b=true;!(true)=false假如程序到这里了,但是条件不成立,则不会执行后面的语句 输出 b
{
System.out.print("b");
}
else
{
System.out.print("c");
}
对于if()语句的理解是:
if(条件){
语句1
}
else{
语句2
}
当条件=true时执行语句1;条件=false时,执行语句2
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询