java 实现倒计时的效果

来源:互联网 发布:杭州淘宝诈骗案进展 编辑:程序博客网 时间:2024/06/18 01:01
package com.niit;import java.util.Calendar;import java.util.Date;// 实现线程的两种方式:1. 继承Thread类  2. 实现Runnable// 实现run方法// 如何启动线程? 线程对象.start();public class Countdown2 implements Runnable{/*** @param args*/public static void main(String[] args){Thread cd = new Thread(new Countdown2());cd.start();}@Overridepublic void run(){// 设置日期2012-12-21Calendar c = Calendar.getInstance();c.set(2012, 12, 21, 0, 0, 0);// 单独设置年、月、日、小时、分钟、秒c.set(Calendar.YEAR, 2012);c.set(Calendar.MONTH, Calendar.DECEMBER); // 0 表示1月,11 表示12月c.set(Calendar.DAY_OF_MONTH, 21);c.set(Calendar.HOUR_OF_DAY, 0);c.set(Calendar.MINUTE, 0);c.set(Calendar.SECOND, 0);// 获取2012-12-21 0:0:0时间点对应的毫秒数long endTime = c.getTimeInMillis();// 获取系统当前时间Date now = new Date();// 获取当前时间点对应的毫秒数long currentTime = now.getTime();// 计算两个时间点相差的秒数long seconds = (endTime - currentTime) / 1000;while (true){System.out.println("还剩: " + seconds + " 秒");seconds--;try{Thread.sleep(1000);}catch (InterruptedException e){e.printStackTrace();}}}}比较一下在js中的效果<html><head><b>今天距离2012年1月1日还有</b><br /><script type="text/javascript">    var DifferHour = -1;    var DifferMinute = -1;    var DifferSecond = -1;    var Tday1 = new Date("1 1,2012 20:00:00");    var daysms = 24 * 60 * 60 * 1000;    var hoursms = 60 * 60 * 1000;    var Secondms = 60 * 1000;    var miscrosecond = 1000;    function clock() {        var time = new Date();        var hour = time.getHours();        var minute = time.getMinutes();        var second = time.getSeconds();var timevalue = "" + ((hour > 12) ? hour - 12 : hour)        timevalue += ((minute < 10) ? ":0" : ":") + minute;        timevalue += ((second < 10) ? ":0" : ":") + second;        timevalue += ((hour > 12) ? "PM" : "AM")        var convertHour = DifferHour;        var convertMinute = DifferMinute;        var convertSecond = DifferSecond;        var Diffms = Tday1.getTime() - time.getTime();        DifferHour = Math.floor(Diffms / daysms);        Diffms -= DifferHour * daysms;        DifferMinute = Math.floor(Diffms / hoursms);        Diffms -= DifferMinute * hoursms;        DifferSecond = Math.floor(Diffms / Secondms);        Diffms -= DifferSecond * Secondms;        var dSecs = Math.floor(Diffms / miscrosecond);        if (convertHour != DifferHour)            document.formnow.dd.value = DifferHour        if (convertMinute != DifferMinute)            document.formnow.hh.value = DifferMinute        if (convertSecond != DifferSecond)            document.formnow.mm.value = DifferSecond        document.formnow.ss.value = dSecs;        document.formnow.ss.value = dSecs;        setTimeout("clock()", 1000);           }</script></head><body onload="clock() ;return true" text="red"><form name="formnow"><input  name="dd" type="text" style="border:0;" size=2/>天<input  name="hh" type="text" style="border:0;" size=2/>小时<input  name="mm" type="text" style="border:0;" size=2/>分<input  name="ss" type="text" style="border:0;" size=2/>秒www.2cto.com</form></body></html>


0 0