import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Scanner;
public class JavaTime {
public static void main(String[] args) throws InterruptedException, ParseException {
Scanner but = new Scanner(System.in);//创建一个键盘输入类
System.out.println("请输入VIP天数:");
long vip_date = but.nextLong();//获取用户输入的天数
if(vip_date<=0) { //判断天数是否小于0
System.out.println("输入错误!");
} else {
System.out.println("您输入的天数为:" + vip_date + "天");
SimpleDateFormat Date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置时间格式
long vip_Time = System.currentTimeMillis();//获取当前系统时间戳
long vip_date_time = (vip_date*(60*60*24))*1000;//获取输入天数的 时间戳
long vip_Time_ok = vip_Time + vip_date_time;//计算VIP到期时间戳
String vip_out_Date = Date.format(vip_Time_ok);//将到期时间转换为Date格式
Thread.sleep(1000);
System.out.println("您的VIP到期时间为:" + vip_out_Date);
Thread.sleep(2000);
System.out.println("即将为您计算您的VIP剩余时间:");
Thread.sleep(2000);
while(true) {
long Time = System.currentTimeMillis(); //在循环语句内重复获取当前系统时间戳
long data_Time = Date.parse(vip_out_Date).getTime();//到期时间转换为Time格式的时间戳
long data_out_Time = (data_Time - Time)/1000;//将(毫秒)的时间戳转换为(秒)
long data_D_Date = (data_out_Time / (60*60*24));//计算剩余天数
long data_D_Time = (data_out_Time - data_D_Date * (60*60*24));//计算总天数的时间戳
long data_H_Date = data_D_Time / 3600;//计算剩余小时
long data_H_Time = ((data_out_Time - data_D_Date * (60*60*24)) - (data_H_Date * 3600));//计算总小时的时间戳
long data_m_Date = (data_H_Time / 60);//计算剩余分钟数
long data_s_Time = ((data_out_Time - data_D_Date * (60*60*24)) - (data_H_Date * 3600) - (data_m_Date * 60));//计算总分钟数的时间戳
long data_s_Date = data_s_Time;//将剩余的秒数赋值
//将剩余结果输出
System.out.println("VIP剩余"+data_D_Date + "天" + data_H_Date +"小时"+data_m_Date+"分钟"+data_s_Date+"秒 -- 到期时间:" + vip_out_Date);
Thread.sleep(1000);
}
}
}
}
Java写一个简单的倒计时算法
发布于 2022-11-30 133 次阅读
Comments NOTHING