Java 实现 有 时分秒 的倒计时
时间: 2024-04-30 18:24:43 浏览: 236
java 实现倒计时
4星 · 用户满意度95%
可以使用 Java 中的 CountDownLatch 类实现带有时分秒的倒计时。下面是一个简单的示例代码:
```java
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
public class CountdownTimer {
private final CountDownLatch countDownLatch;
public CountdownTimer(long timeLeft, TimeUnit unit) {
countDownLatch = new CountDownLatch(1);
Thread thread = new Thread(() -> {
try {
unit.sleep(timeLeft);
countDownLatch.countDown();
} catch (InterruptedException e) {
e.printStackTrace();
}
});
thread.start();
}
public boolean await() throws InterruptedException {
return countDownLatch.await();
}
}
```
使用时,可以创建一个 CountdownTimer 对象,并传入要倒计时的时间和时间单位,然后在需要等待的地方调用 await() 方法,直到倒计时结束。例如:
```java
CountdownTimer timer = new CountdownTimer(10, TimeUnit.SECONDS);
System.out.println("Start counting down...");
if (timer.await()) {
System.out.println("Countdown finished!");
} else {
System.out.println("Countdown interrupted!");
}
```
这个示例会输出 "Start counting down...",然后等待 10 秒钟,最后输出 "Countdown finished!"。如果在倒计时期间调用了 timer.interrupt() 方法中断了倒计时线程,那么就会输出 "Countdown interrupted!"。
阅读全文