Java倒计时的三种方法_若梦丶忆流年的博客-CSDN博客

Java倒计时的三种方法

package daojishi;
import java.util.Date;
import java.util.Calendar;
import java.util.Timer;
import java.util.TimerTask;
/**
 * @author 演示倒计时
 *
 */
public class daojishi{
     public static int time=60*60*60;
     public static Calendar c;
     public static long endTime;
     public static Date date;
     public static long startTime;
     public static long midTime;
     
     public static void main(String[] arg) {
         /*Date date=new Date();
         System.out.println(date);*/
         c=Calendar.getInstance();
         c.set(2020,10,11,0,0,0);
         endTime=c.getTimeInMillis();
         date=new Date();
         startTime=date.getTime();
         midTime=(endTime-startTime)/1000;
         //time1();
         //time2();
         time3();
     }
     /*
      * 方法一:给定时长倒计时
      */
     private static void time1() {
         while(time>0) {
             time--;
             try {
                 Thread.sleep(1000);
                 int h=time/60/60%60;
                 int m=time/60%60;
                 int s=time%60;
                 System.out.println("还剩"+h+"小时"+m+"分钟"+s+"秒");

             }catch(InterruptedException e) {
                 e.printStackTrace();
             }
         }
     }
     /*
      * 方法二:设定时间戳,倒计时
      */
     private static void time2() {
         while (midTime>0) {
             midTime--;
             long h=midTime/60/60%60;
             long m=midTime/60%60;
             long s=midTime%60;
             System.out.println("还剩"+h+"小时"+m+"分钟"+s+"秒");
             try {
                 Thread.sleep(1000);
             }
             catch(InterruptedException e) {
                 e.printStackTrace();
             }
         }
     }
     /*
      * 方法三:使用java.util.Timer类进行倒计时
      */
     private static void time3() {
         Timer timer=new Timer();
         timer.schedule(new TimerTask() {
             public void run() {
                 midTime--;
                 long h=midTime/60/60%60;
                 long m=midTime/60%60;
                 long s=midTime%60;
                 System.out.println("还剩"+h+"小时"+m+"分钟"+s+"秒");
             }
         },0,1000);
     }
}

文章知识点与官方知识档案匹配,可进一步学习相关知识

Java技能树首页概览120873 人正在系统学习中


原网址: 访问
创建于: 2023-06-21 12:03:55
目录: default
标签: 无

请先后发表评论
  • 最新评论
  • 总共0条评论