import java.util.*;
import java.text.*;
public class Text01
{
/*
1.用户输入 时 分 秒
2.解析计算
3.得到计时器
*/
public static void main(String[] args){
MyInpt();
}
//用户输入 时 分 秒
public static void MyInpt(){
List<CalendarText> list=new ArrayList<CalendarText>();
CalendarText ct=new CalendarText();
Scanner scanner =new Scanner(System.in);
while(true){
//System.out.print("请输入天数:");
//long day=scanner.nextLong();
System.out.print("请输入小时:");
long hour=scanner.nextLong();
System.out.print("请输入分钟:");
long minuter=scanner.nextLong();
if(minuter>=0&minuter<=59){
System.out.println("正确");
}else{
System.out.println("输入有误");
continue;
}
System.out.print("请输入毫秒:");
long second=scanner.nextLong();
if(second>=0&second<=59){
System.out.println("正确");
}else{
System.out.println("输入有误");
continue;
}
//ct.setDay(day);
ct.setHour(hour);
ct.setMinuter(minuter);
ct.setSecond(second);
list.add(ct);
parsing(list);
break;
}
}
//解析计算
public static void parsing(List<CalendarText> list){
for(CalendarText ct:list){
//long day=ct.getDay();
long hour=ct.getHour();
long minuter=ct.getMinuter();
long second=ct.getSecond();
//拿到当前年月
SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");
Date yearr=new Date();
String year=s.format(yearr);
//System.out.println(yearr);
//拿到当前小时
SimpleDateFormat sf = new SimpleDateFormat("HH");
Date hourr=new Date();
long hh= hourr.getHours()+hour;
//拼接字符串
String endTime=year+" "+hh+":"+minuter+":"+second;
System.out.println(endTime);
SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try{
Date d=sd.parse(endTime);//字符串转换时间
Date date=new Date();//当前时间
long sumTime=(d.getTime()-date.getTime())/1000;
long hour1=sumTime/60/60%60;
long minuter1=sumTime/60%60;
long second1=sumTime%60;
System.out.println("倒计时间:"+hour1+"时"+minuter1+"分钟"+second1+"秒");
new CalendarTextThread(sumTime).start();
//System.out.println("我来了");
}catch(Exception e){
e.printStackTrace();
}
}
}
}
class CalendarTextThread extends Thread
{
long sumTime;
public CalendarTextThread(long sumTime){
this.sumTime=sumTime;
}
@Override
public void run()
{
while(true){
sumTime--;
if(sumTime!=0){
long hour1=sumTime/60/60%60;
long minuter1=sumTime/60%60;
long second1=sumTime%60;
System.out.println("倒计时间:"+hour1+"时"+minuter1+"分钟"+second1+"秒");
}else{
System.out.println( "倒计时结束");
break;
}
try{
this.sleep(1000);
}catch(Exception e){
e.printStackTrace();
}
}
}
}
class CalendarText{
long day;
long hour;
long minuter;
long second;
public long getDay(){
return this.day;
}
public void setDay(long day){
this.day=day;
}
public long getHour(){
return this.hour;
}
public void setHour(long hour){
this.hour=hour;
}
public long getMinuter(){
return this.minuter;
}
public void setMinuter(long minuter){
this.minuter=minuter;
}
public long getSecond(){
return this.second;
}
public void setSecond(long second){
this.second=second;
}
}
定时器
最新推荐文章于 2024-08-26 08:49:30 发布