繁体   English   中英

Java代码将秒转换为分钟,小时和天

[英]Java Code to convert seconds into minutes, hours and days

我正在尝试创建一个Java代码,要求用户插入他们想转换的秒数,而我却无法运行它。 可以帮忙吗? 下面的代码.................................................

import javax.swing.*;

public class Week2Seconds {


    private static final int MINUTES_IN_AN_HOUR = 60;
    private static final int SECONDS_IN_A_MINUTE = 60;

    public static void main(String[] args) {

        JFrame frame = new JFrame("InputDialog");

        String seconds   = JOptionPane.showInputDialog(frame, "Enter Number Of Seconds to Convert");

    }

  private static String timeConversion(int seconds) {

        final int MINUTES_IN_AN_HOUR = 60;
        final int SECONDS_IN_A_MINUTE = 60;

        int minutes = seconds / SECONDS_IN_A_MINUTE;
        seconds -= minutes * SECONDS_IN_A_MINUTE;

        int hours = minutes / MINUTES_IN_AN_HOUR;
        minutes -= hours * MINUTES_IN_AN_HOUR;

        return hours + " hours " + minutes + " minutes " + seconds + " seconds";
    }
}

非常感谢Vinnie

您将seconds存储为String ,计算机不知道输入是数字,因此可能甚至不是数字。 您可以使用静态方法Integer.parseInt尝试将字符串转换为整数。

int numSeconds = Integer.parseInt(seconds)

如果seconds不是有效数字,则可能引发NumberFormatException

将数字设为正确的类型后,可以将其传递给方法timeConversion(numSeconds);


根据您对为什么由于创建了JFrame而导致程序无法正确退出的评论, JFrame将使您的程序一直运行,直到正确处理为止。 使用JFrame类超出了您的问题范围,但是您的程序根本不需要此框架,请将其删除。 null作为showInputDialog方法的parentComponent传递。

JOptionPane.showInputDialog(null, "Enter Number Of Seconds to Convert");


您可能遇到的一些后续问题可能是:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM