【问题标题】:I want to be able to make something like a background stopwatch?我希望能够制作诸如背景秒表之类的东西?
【发布时间】:2014-12-04 17:28:22
【问题描述】:

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

这个程序没有任何图形用户界面,而是用文字显示所有内容。

这是我现在拥有的:

        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 时,程序将显示它们重生的时间。

提前谢谢! :D

【问题讨论】:

  • 您是否一直在修改 minsec 变量?你一开始是从键盘上读出来的吗?
  • 是的。 minsec 将在每个 if 语句中进行修改。

标签: java timer stopwatch


【解决方案1】:

你可以这样做:

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,则将分钟数加一并保留秒数。

【讨论】:

  • 这不是我要找的,但我使用了您输入的一些代码,这些代码将开始时间并获取当前时间。但它一直说 start_time 和 current_time 应该是 long 而不是 int。但是如果我把它转换成 long 显示的时间会变成 1417716395:1417716295,我不知道发生了什么。
  • 哦,是的,对不起,它应该很长 - 我会修改我的答案。它返回从 1970 年 1 月 1 日开始花费的秒数,这就是它看起来很大的原因。你想要日历的当前时间吗?大概是下午 3:14:15?
  • 是的,这就是我要找的。谢谢!
  • 我再次修改了我的答案。这就是你要找的吗?
  • 非常感谢!它按我的预期工作。再次感谢您。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-01-22
  • 1970-01-01
  • 2012-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-09
相关资源
最近更新 更多