您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了如何實現Java倒計時,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。
寫完js倒計時,突然想用java實現倒計時,寫了三種實現方式
一:設置時長的倒計時;
二:設置時間戳的倒計時;
三:使用java.util.Timer類實現的時間戳倒計時
代碼如下:
package timer; import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask; /** * java演示倒計時 * */ 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);// 注意月份的設置,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類進行倒計時 */ 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); } /** * 方式二: 設定時間戳,倒計時 */ 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(); } } } /** * 方式一: 給定時長倒計時 */ 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(); } } } }
運行結果:
time1()結果:
time2()結果:
time3()結果:
以上就是關于如何實現Java倒計時的內容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。