多线程之模拟倒计时和打印实时时间
package com.impl.threadSleep;
import java.text.SimpleDateFormat;
import java.util.Date;
public class TestSleep02 {
public static void main(String[] args) {
try {
tenDow();
} catch (InterruptedException e) {
e.printStackTrace();
}
//打印当前时间
//创建一个Date类对象并获取当前时间
Date startTime = new Date(System.currentTimeMillis());
System.out.println(startTime);//输出当前时间
while(true){
try {
Thread.sleep(1000);//延迟一秒
/*
创建一个SimpleDateFormat对象,格式化和解析日期
调用SimpleDateformat类中的format方法;
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm:ss");
simpleDateFormat.format(startTime);
*/
System.out.println(new SimpleDateFormat("HH:mm:ss").format(startTime));
startTime = new Date(System.currentTimeMillis());//更新当前时间
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
//模拟倒计时
public static void tenDow() throws InterruptedException{
int num = 5;
while(true){
Thread.sleep(1000);
System.out.println(num--);
if(num<=0){
break;
}
}
}
}
/*
5
4
3
2
1
Sun Jul 25 10:16:26 CST 2021
10:16:26
10:16:27
10:16:28
10:16:29
10:16:30
....
...
..
...
..
*/