日期:2014-05-20  浏览次数:20774 次

java新手求教,前辈们请指导下,感谢!
问题:使用嵌套if结构实现。如果年龄够7岁,或者年龄够5岁并且性别是"男",就可以搬动桌子。或者不能搬动桌子.
   
  以下是小弟写的代码,可是实现不了上述条件,请帮忙看看我错在哪里,谢谢。
  import java.util.Scanner;
  public class Topic{
  public static void main(String[] args){
  Scanner input = new Scanner(System.in);
  System.out.print("请输入性别:");
  String sex = input.next();
  System.out.print("请输入年龄:");
  int num = input.nextInt();
  if(num >= 7){
  if(num >=5 && sex.equals("男")){
  System.out.println("可以搬动桌子");
  }
  }else{
  System.out.println("不能搬动桌子");  
  }
  }
  }

------解决方案--------------------
Java code

Scanner input = new Scanner(System.in);
        System.out.print("请输入性别:");
        String sex = input.next();
        System.out.print("请输入年龄:");
        int num = input.nextInt();
        if (num >= 7 || num >= 5 && sex.equals("男")) {
            System.out.println("可以搬动桌子");
        } else {
            System.out.println("不能搬动桌子");
        }

------解决方案--------------------
或:
Java code

    if (num >= 7)
    {
        System.out.println("可以搬动桌子");
    }
    else if(num >= 5 && sex.equals("男"))
    {
        System.out.println("可以搬动桌子");
    }
    else
    {
        System.out.println("不能搬动桌子");
    }

------解决方案--------------------
探讨

请问这位前辈,我是错在哪里呢?

------解决方案--------------------
感觉是不是你的年龄变量类型有问题 改为 int 类型 你在试一下