java实现倒计天数_Java 实现倒计时(由秒计算天、小时、分钟、秒)

这是一个Java程序,用于实现从总秒数开始的倒计时,并将其转换为天、小时、分钟和秒的显示。程序通过初始化数据、重置数据和动态更新计数来实现倒计时功能,输出格式化后的倒计时结果。
摘要由CSDN通过智能技术生成

public class Countdown4 {

private static long day = 0;

private static long hour = 0;

private static long minute = 0;

private static long second = 0;

private static boolean dayNotAlready = false;

private static boolean hourNotAlready = false;

private static boolean minuteNotAlready = false;

private static boolean secondNotAlready = false;

public static void main(String[] args) {

long totalSeconds = 60 * 60 * 24 * 1 + 1;

initData(totalSeconds);

new Timer().schedule(new TimerTask() {

@Override

public void run() {

if (secondNotAlready) {

startCount();

} else {

cancel();

}

}

}, 0, 1000);

}

private static void initData(long totalSeconds) {

resetDa

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,我们需要使用Java GUI库来创建计时牌,这里我们选择使用Swing库。接下来,我们可以创建一个JFrame窗口,将计时牌放在窗口中心。具体实现步骤如下: 1. 创建一个JFrame窗口,设置窗口大小和标题。 ``` JFrame frame = new JFrame("计时牌"); frame.setSize(400, 300); ``` 2. 创建一个JPanel面板,并将它添加到JFrame窗口中。 ``` JPanel panel = new JPanel(); frame.add(panel); ``` 3. 在面板中创建一个JLabel标签,用于显示计时天数。 ``` JLabel label = new JLabel("计时:0天"); panel.add(label); ``` 4. 创建一个计时器,使用Timer类来实现。 ``` Timer timer = new Timer(1000, new ActionListener() { int days = 10; // 计时天数 public void actionPerformed(ActionEvent e) { // 每秒执行一次,更新计时天数 days--; label.setText("计时:" + days + "天"); if (days == 0) { // 计时结束,停止计时器 ((Timer)e.getSource()).stop(); } } }); ``` 5. 启动计时器,开始计时。 ``` timer.start(); ``` 完整代码如下: ``` import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.Timer; public class CountdownClock { public static void main(String[] args) { // 创建窗口 JFrame frame = new JFrame("计时牌"); frame.setSize(400, 300); // 创建面板 JPanel panel = new JPanel(); frame.add(panel); // 创建标签 JLabel label = new JLabel("计时:0天"); panel.add(label); // 创建计时器 Timer timer = new Timer(1000, new ActionListener() { int days = 10; // 计时天数 public void actionPerformed(ActionEvent e) { // 每秒执行一次,更新计时天数 days--; label.setText("计时:" + days + "天"); if (days == 0) { // 计时结束,停止计时器 ((Timer)e.getSource()).stop(); } } }); // 启动计时器 timer.start(); // 显示窗口 frame.setVisible(true); } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值