我正在尝试为我的大学马拉松创建一个程序。 我想能够为每一个跑马拉松的人开始一个秒表(计时器),并且当每个人完成马拉松时我想输入那里的身份证号并停在那里秒表(计时器)并打印出一个声明说(“你完成了马拉松在“+(时间)。
只是想知道这是否可以创造以及我将采用何种方式。 任何帮助将不胜感激
问候
Niall
答案 0 :(得分:0)
有关在Swing中创建数字时钟的信息,请参阅this answer。
虽然这个答案只是一个时钟,但它很容易被制成秒表。利用System.currentTimeMillis()
。拥有static
开始时间,该时间会填充到Runner
对象的数据结构中,该数据结构将包含name
startTime
和endTime
。对于每个跑步者来说,他们得到了自己的endTime
。
请参阅this question了解格式化时间。
<强>更新强>
有很多方法可以解决这个问题。一种解决方案是您可以将Runners
存储在HashMap
public class Runner {
long endTime;
Integer id;
public void setEndTime(long endTime) {
this.endTime = endTime;
}
}
public class GUI {
Map<Integer, Runner> runners = new HashMap<>();
public GUI {
Runner runner = new Runner(12334....) // id
map.put(runner.getId(), runner);
}
}
就像我说的那样,有很多方法可以设定结束时间。一种方法是在GUI类中使用endTime
变量 。单击按钮时,将分配变量。然后在文本字段中输入运行者ID,并将该结束时间分配给匹配id的地图中的运行器。因此,每次按下按钮,都会设置endTime
变量的新结束时间,因此每个参赛者都会获得自己的endTime