调用包含if / else的方法

时间:2013-10-03 16:36:42

标签: if-statement methods user-input java.util.scanner

这是一个相当基本的问题,但作为一名新的Java学生,我很难过。这是一个我正在研究的实践问题,无法弄清楚如何将hotOrColdOutside方法调用到main中。截至目前,它没有编译并要求返回但是我的指令指定在这个实例中没有参数或返回。我觉得这是一件简单的事情,我知道但是现在正在我的头上,任何帮助纠正这一点都将受到赞赏。

import java.util.Scanner;

class TempExp
{
   public static void main(String[] args)
   {
       Scanner input = new Scanner(System.in);
       String answer = outsideTemp();
       System.out.print(answer);
   }//end main
   public static String outsideTemp()
   {
       Scanner input = new Scanner(System.in);
       System.out.print("What is the temperature outside: ");
       int userIn = input.nextInt();
       if(userIn >= 80)
       {
          System.out.print("It is very hot outside.");
       }
       else if(userIn >= 60)
       {
          System.out.print("It is very nice outside.");
       }
       else
       {
          System.out.print("It is very cold outside.");
       }//end if/else           
    }//end method   
}  

2 个答案:

答案 0 :(得分:0)

功能

public static String outsideTemp()

返回String。但是,主要功能不会返回任何内容。

你会想要这样的东西:

import java.util.Scanner;

class TempExp
{
   public static void main(String[] args)
   {
       Scanner input = new Scanner(System.in);
       String answer = outsideTemp();
       System.out.print(answer);
   }//end main

   public static String outsideTemp()
   {
       Scanner input = new Scanner(System.in);
       System.out.print("What is the temperature outside: ");
       int userIn = input.nextInt();
       if(userIn >= 80)
       {
          return "It is very hot outside.";
       }
       else if(userIn >= 60)
       {
          return "It is very nice outside.";
       }
       else
       {
          return "It is very cold outside.";
       }//end if/else           
    }//end method   
}  

答案 1 :(得分:0)

因为你说出你的指示(我猜你是指作业?)说没有参数或回报,你需要用String替换outsideTemp()函数定义的void部分{1}}。因为它不会返回任何内容,所以您的main函数也需要更改为不希望返回任何内容。

public static void main(String[] args)
{
    outsideTemp();
}//end main

public static void outsideTemp()
{
    ... // this all stays exactly how it is now
}

但是,如果您的意思是返回一个字符串,请使用John的答案