首页 > 代码库 > java倒计时三种简单实现方式
java倒计时三种简单实现方式
写完js倒计时,突然想用java实现倒计时,写了三种实现方式
一:设置时长的倒计时;
二:设置时间戳的倒计时;
三:使用java.util.Timer类实现的时间戳倒计时
代码如下:
1 package timer; 2 3 import java.util.Calendar; 4 import java.util.Date; 5 import java.util.Timer; 6 import java.util.TimerTask; 7 8 /** 9 * java演示倒计时 10 * 11 */ 12 public class TimeTest { 13 public static int time = 60 * 60 * 60; 14 public static Calendar c; 15 public static long endTime; 16 public static Date date; 17 public static long startTime; 18 public static long midTime; 19 20 public static void main(String[] args) { 21 c = Calendar.getInstance(); 22 c.set(2017, 4, 17, 0, 0, 0);// 注意月份的设置,0-11表示1-12月 23 // c.set(Calendar.YEAR, 2017); 24 // c.set(Calendar.MONTH, 4); 25 // c.set(Calendar.DAY_OF_MONTH, 17); 26 // c.set(Calendar.HOUR_OF_DAY, 0); 27 // c.set(Calendar.MINUTE, 0); 28 // c.set(Calendar.SECOND, 0); 29 endTime = c.getTimeInMillis(); 30 date = new Date(); 31 startTime = date.getTime(); 32 midTime = (endTime - startTime) / 1000; 33 34 // time1();//方式一 35 time2();// 方式二 36 // time3();//方式三 37 } 38 39 /** 40 * 方式三: 使用java.util.Timer类进行倒计时 41 */ 42 private static void time3() { 43 Timer timer = new Timer(); 44 timer.schedule(new TimerTask() { 45 public void run() { 46 midTime--; 47 long hh = midTime / 60 / 60 % 60; 48 long mm = midTime / 60 % 60; 49 long ss = midTime % 60; 50 System.out.println("还剩" + hh + "小时" + mm + "分钟" + ss + "秒"); 51 } 52 }, 0, 1000); 53 } 54 55 /** 56 * 方式二: 设定时间戳,倒计时 57 */ 58 private static void time2() { 59 60 while (midTime > 0) { 61 midTime--; 62 long hh = midTime / 60 / 60 % 60; 63 long mm = midTime / 60 % 60; 64 long ss = midTime % 60; 65 System.out.println("还剩" + hh + "小时" + mm + "分钟" + ss + "秒"); 66 try { 67 Thread.sleep(1000); 68 69 } catch (InterruptedException e) { 70 e.printStackTrace(); 71 } 72 } 73 } 74 75 /** 76 * 方式一: 给定时长倒计时 77 */ 78 private static void time1() { 79 while (time > 0) { 80 time--; 81 try { 82 Thread.sleep(1000); 83 int hh = time / 60 / 60 % 60; 84 int mm = time / 60 % 60; 85 int ss = time % 60; 86 System.out.println("还剩" + hh + "小时" + mm + "分钟" + ss + "秒"); 87 } catch (InterruptedException e) { 88 e.printStackTrace(); 89 } 90 } 91 92 } 93 }
运行结果:
time1()结果:
time2()结果:
time3()结果:
java倒计时三种简单实现方式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。