首页 > 解决方案 > 为什么这段代码不起作用?没有输出

问题描述

 public class Main
 {
  public static void main(String[] args) {

    int x=8, y=0, z=1; //random integers
    
  if (x > 0 && y < 0)
  
 {
  if (x==8)
   System.out.print("Yes");
  else if (z > 0)
  System.out.print("No");
 }
 
    }
}

为什么这段代码不打印输出?

它应该打印“yes”或“no”,因为第一个 if 是错误的?

标签: java

解决方案


&& 运算符仅当且仅当两个操作数都为 true 时才返回 true 即,

 true  && true   = true 
 true  && false  = false
 false && true  = false
 false && false = false

在您的代码中,因为y= 0第一个 if 条件本身不满足,所以您必须替换y<0y<=0


推荐阅读