0

这是一个相当基本的问题,但作为一个新的 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   
}  
4

2 回答 2

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   
}  
于 2013-10-03T16:41:47.167 回答
0

因为你说你的指令(我猜你的意思是赋值?)说没有参数或返回,你需要替换String函数定义的部分outsideTemp()with void。因为它不会返回任何内容,所以您的main函数也需要更改为不期望返回任何内容。

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

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

但是,如果您确实要返回一个字符串,请使用约翰的答案

于 2013-10-03T16:46:54.043 回答