Java倒計(jì)時(shí)三種實(shí)現(xiàn)方式代碼實(shí)例
寫(xiě)完js倒計(jì)時(shí),突然想用java實(shí)現(xiàn)倒計(jì)時(shí),寫(xiě)了三種實(shí)現(xiàn)方式
一:設(shè)置時(shí)長(zhǎng)的倒計(jì)時(shí);
二:設(shè)置時(shí)間戳的倒計(jì)時(shí);
三:使用java.util.Timer類(lèi)實(shí)現(xiàn)的時(shí)間戳倒計(jì)時(shí)
代碼如下:
package timer;import java.util.Calendar;import java.util.Date;import java.util.Timer;import java.util.TimerTask;/** * java演示倒計(jì)時(shí) * */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類(lèi)進(jìn)行倒計(jì)時(shí) */ 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 + '小時(shí)' + mm + '分鐘' + ss + '秒'); } }, 0, 1000); } /** * 方式二: 設(shè)定時(shí)間戳,倒計(jì)時(shí) */ 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 + '小時(shí)' + mm + '分鐘' + ss + '秒'); try {Thread.sleep(1000); } catch (InterruptedException e) {e.printStackTrace(); } } } /** * 方式一: 給定時(shí)長(zhǎng)倒計(jì)時(shí) */ 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 + '小時(shí)' + mm + '分鐘' + ss + '秒'); } catch (InterruptedException e) {e.printStackTrace(); } } }}
運(yùn)行結(jié)果:
time1()結(jié)果:

time2()結(jié)果:

time3()結(jié)果:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. ASP新手必備的基礎(chǔ)知識(shí)2. PHP基礎(chǔ)之生成器4——比較生成器和迭代器對(duì)象3. CentOS郵箱服務(wù)器搭建系列——SMTP服務(wù)器的構(gòu)建( Postfix )4. asp文件用什么軟件編輯5. JAVA 實(shí)現(xiàn)延遲隊(duì)列的方法6. Vue axios獲取token臨時(shí)令牌封裝案例7. js實(shí)現(xiàn)計(jì)算器功能8. JS中6個(gè)對(duì)象數(shù)組去重的方法9. 利用CSS制作3D動(dòng)畫(huà)10. 通過(guò)IEAD+Maven快速搭建SSM項(xiàng)目的過(guò)程(Spring + Spring MVC + Mybatis)

網(wǎng)公網(wǎng)安備