首页 > 解决方案 > Java:如何使用方法正确返回结果

问题描述

我编写了一个程序,该程序将通过调用方法打印“基于可能的温度”季节 A、B、C 或 D。

代码 :

import java.util.Scanner;
import javax.swing.*;

public class Seasons {

  public static void main(String[] args) {
    int inputTemp;
    String response = JOptionPane.showInputDialog(null,
            "Enter the temperature");
    inputTemp = Integer.parseInt(response);
    String message = "Based on the temperature of " + inputTemp
            + " it is most likely " + determineSeason(inputTemp);
    JOptionPane.showMessageDialog(null, message);

  }

  public static String determineSeason(int inputTemp) {
    String season = null;
    if (inputTemp > 130 || inputTemp < -20) { 
        JOptionPane.showMessageDialog(null,"Invalid");
    }

    else if (inputTemp >= 90) {
        JOptionPane.showMessageDialog(null,"summer"); }

    else if (inputTemp >= 70 && inputTemp < 90) {
        JOptionPane.showMessageDialog(null,"spring"); }
    else { 
        JOptionPane.showMessageDialog(null,"winter"); }

    return season; 
  }
}

该程序从我的方法返回一个 JOptionPane 季节,然后从 main 方法中显示 JOptionPane 我需要它说“根据温度季节是季节 A、B、C 或 D。

任何关于我所缺少的建议将不胜感激!

标签: javaswingparametersreturn

解决方案


您没有分配结果,season而只是返回null

将 if 语句中的每个条件更改为类似于此的内容。

String season = null;
if (inputTemp > 130 || inputTemp < -20) {
    season = "invalid";
} else if(inputTemp >= 90) {
    season = "summer";
}

推荐阅读