Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我想做个背景秒表之类的东西?_Java_Timer_Stopwatch - Fatal编程技术网

Java 我想做个背景秒表之类的东西?

Java 我想做个背景秒表之类的东西?,java,timer,stopwatch,Java,Timer,Stopwatch,我对Java有点陌生,所以请容忍我。 因此,我目前正在制作一个程序,当用户启动程序时,后台秒表/计时器将运行。当计时器运行时,用户将输入命令,这些命令将显示时间。我试图制作一个重生计时器,用户在运行时看不到时间,但当用户输入怪物的命令时,它会显示它何时重生 这个程序将没有任何GUI,并将以文字显示所有内容 以下是我现在拥有的: System.out.println("Start?"); char s = in.next().charAt(0); if (s ==

我对Java有点陌生,所以请容忍我。 因此,我目前正在制作一个程序,当用户启动程序时,后台秒表/计时器将运行。当计时器运行时,用户将输入命令,这些命令将显示时间。我试图制作一个重生计时器,用户在运行时看不到时间,但当用户输入怪物的命令时,它会显示它何时重生

这个程序将没有任何GUI,并将以文字显示所有内容

以下是我现在拥有的:

        System.out.println("Start?");
    char s = in.next().charAt(0);
    if (s == 'S')
    {           
        do
        {
            System.out.println("Enter camp number:");
            char cn = in.next().charAt(0);

            if (cn == 'A')
                System.out.println("Raptor's respawn time is at " + min + ":" + sec + "\n");
            else if (cn == 'B')
                System.out.println("Wolf's respawn time is at " + min + ":" + sec + "\n");
            else if (cn == 'X')
                {
                    x = true;
                    System.out.println("Thank you for using my program!");
                }
            else
                System.out.println("Invalid input");
        }
        while (!x);
    }
    else
        System.out.println("Invalid input, please restart program.");
}
因此,当用户输入S时,计时器/秒表将开始运行,当用户输入A或B时,程序将显示它们重新启动的时间


提前谢谢!:你可以这样做:

Calendar c = Calendar.getInstance();
int hrs = c.get(Calendar.HOUR);
int mnts = c.get(Calendar.MINUTE);
int secs = c.get(Calendar.SECOND);
然后可以通过打印来打印重新生成时间

System.out.printf("Monster will respawn in %d minutes and %d seconds", mnts+min, secs+sec);

当然,您还必须进行一些验证,例如如果
secs+sec
给您的时间超过60分钟,则在分钟中添加一个,并将剩余的时间保留几秒钟。

您是否一直在修改
min
sec
变量?你一开始是从键盘上读的吗?是的
min
sec
将在每个if语句中进行修改。这不是我想要的,但我使用了您输入的一些代码,这些代码将开始时间并获取当前时间。但是它一直在说开始时间和当前时间应该是long而不是int。但是如果我将其转换为long,则显示的时间将变成1417716395:1417716295,我不知道发生了什么。哦,是的,对不起,应该是long-我将修改我的答案。它返回从1970年1月1日起花费的秒数,因此它看起来像一个大数字。您想知道当前时间吗?大约下午3:14:15?是的,这就是我要找的。非常感谢。我又修改了我的答案。这就是你要找的吗?非常感谢!它正按照我的预期工作。再次感谢你。