Java倒計(jì)時三種實(shí)現(xiàn)方式代碼實(shí)例
寫完js倒計(jì)時,突然想用java實(shí)現(xiàn)倒計(jì)時,寫了三種實(shí)現(xiàn)方式
一:設(shè)置時長的倒計(jì)時;
二:設(shè)置時間戳的倒計(jì)時;
三:使用java.util.Timer類實(shí)現(xiàn)的時間戳倒計(jì)時
代碼如下:
package timer;import java.util.Calendar;import java.util.Date;import java.util.Timer;import java.util.TimerTask;/** * java演示倒計(jì)時 * */public class TimeTest { 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[] args) { c = Calendar.getInstance(); c.set(2017, 4, 17, 0, 0, 0);// 注意月份的設(shè)置,0-11表示1-12月 // c.set(Calendar.YEAR, 2017); // c.set(Calendar.MONTH, 4); // c.set(Calendar.DAY_OF_MONTH, 17); // c.set(Calendar.HOUR_OF_DAY, 0); // c.set(Calendar.MINUTE, 0); // c.set(Calendar.SECOND, 0); endTime = c.getTimeInMillis(); date = new Date(); startTime = date.getTime(); midTime = (endTime - startTime) / 1000; // time1();//方式一 time2();// 方式二 // time3();//方式三 } /** * 方式三: 使用java.util.Timer類進(jìn)行倒計(jì)時 */ private static void time3() { Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run() {midTime--;long hh = midTime / 60 / 60 % 60;long mm = midTime / 60 % 60;long ss = midTime % 60;System.out.println('還剩' + hh + '小時' + mm + '分鐘' + ss + '秒'); } }, 0, 1000); } /** * 方式二: 設(shè)定時間戳,倒計(jì)時 */ private static void time2() { while (midTime > 0) { midTime--; long hh = midTime / 60 / 60 % 60; long mm = midTime / 60 % 60; long ss = midTime % 60; System.out.println('還剩' + hh + '小時' + mm + '分鐘' + ss + '秒'); try {Thread.sleep(1000); } catch (InterruptedException e) {e.printStackTrace(); } } } /** * 方式一: 給定時長倒計(jì)時 */ private static void time1() { while (time > 0) { time--; try {Thread.sleep(1000);int hh = time / 60 / 60 % 60;int mm = time / 60 % 60;int ss = time % 60;System.out.println('還剩' + hh + '小時' + mm + '分鐘' + ss + '秒'); } catch (InterruptedException e) {e.printStackTrace(); } } }}
運(yùn)行結(jié)果:
time1()結(jié)果:
time2()結(jié)果:
time3()結(jié)果:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. asp在iis7報錯行號不準(zhǔn)問題的解決方法2. 三個不常見的 HTML5 實(shí)用新特性簡介3. ASP中解決“對象關(guān)閉時,不允許操作。”的詭異問題……4. 原生js XMLhttprequest請求onreadystatechange執(zhí)行兩次的解決5. 刪除docker里建立容器的操作方法6. CSS代碼檢查工具stylelint的使用方法詳解7. msxml3.dll 錯誤 800c0019 系統(tǒng)錯誤:-2146697191解決方法8. jsp實(shí)現(xiàn)簡單用戶7天內(nèi)免登錄9. CSS3實(shí)現(xiàn)動態(tài)翻牌效果 仿百度貼吧3D翻牌一次動畫特效10. 匹配模式 - XSL教程 - 4
