我想创建一个有 2 个按钮“Go”和“Stop”的程序。当我按 Go 时,程序会查找按下按钮的时间,当我按 Stop 时,程序会查找按下此按钮的时间,然后显示 time2-time1。问题是,当我按下 Go 按钮时,它会向我显示新的 time2-time1,两者都已重置,但还会打印一个新的重置的 time2 减去第一个 time1,就像卡在循环中一样。
go.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
GregorianCalendar timesi= new GregorianCalendar();
int time1 =timesi.get(Calendar.MINUTE);
stop.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
GregorianCalendar timesi1= new GregorianCalendar();
int time2 =timesi1.get(Calendar.MINUTE);
System.out.println(time2-time1);
}
});
}
});
当我第一次按下 Go 并经过 1 分钟时,当我按“停止”时,它会打印 1,但是当我按下 Go 并且已经过去 3 分钟时,它会打印 34,3 是重置时间,4 是旧时间1 。我该如何更改它,以便在 time1 和 time2 都重置的情况下只打印 3?
杨__羊羊
相关分类