Java 打印语句和if语句的结果不同
我是Java的初学者。我遇到一个问题,青少年的年龄在13-19岁之间。有两个int值,如果其中一个是青少年,我应该打印true,如果两个都是青少年,我应该打印falseJava 打印语句和if语句的结果不同,java,if-statement,Java,If Statement,我是Java的初学者。我遇到一个问题,青少年的年龄在13-19岁之间。有两个int值,如果其中一个是青少年,我应该打印true,如果两个都是青少年,我应该打印false if ((a >= 13 && a <= 19) && (b >= 13 && b <= 19)) { out.println(false); } out.println(true); 如果((a>=13&&a=13&&b预期值:真>>运行:真
if ((a >= 13 && a <= 19) && (b >= 13 && b <= 19)) {
out.println(false);
}
out.println(true);
如果((a>=13&&a=13&&b预期值:真>>运行:真
(16,9)->预期值:真>>运行值:真
(13,19)->预期值:false>>运行值:false
但特别是这个,我不能:(99,99)->预期:false>>运行:true
现在,如果我尝试将其打印为语句:
System.out.println((99>=13&&99=13&&99
我希望您现在能够理解逻辑AND(&&)的概念:-
一个是TRUE+TRUE输出为TRUE,否则输出为FALSE。TRUE&TRUE=TRUE
True&(除True以外的任何内容)=false您总是打印true
。您缺少一个else
。只有当a
和b
的值都在13-19范围内时,您才打印false
。鉴于上次测试中的这两个变量都不在该范围内,为什么您希望它打印true
?您可能需要如果只有一个是青少年,而另一个不是青少年,请查看if
语句的逻辑。感谢您的帮助!
Condition 1 Condition2 Output
true true true
true false false
false true false
false false false