java作为目前最为流行的计算机开发语言之一,学习java是高薪就业的好选择,以下是关于Java程序如何实现多线程倒计时牌,希望下面的内容介绍,能够让大家对于Java程序如何实现多线程倒计时牌更加了解,一起来学习下吧。
使用Java多线程实现倒计时牌
§ 定义
开发一个图形界面的倒计时牌程序,程序通过预先输入的目标时间,动态显示当前时间离目标时间相差的天数,小时数,分钟数和秒数,每秒刷新一次。
§ 说明
1. 该案例主要考察java多线程程序的设计基本方法。
2. 日期数据的处理方式。
3. 实现每秒刷新一次的方法。
package classic3IOAndThread;
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class CountDown {
long longTime;
long currentTime;
long distTime;
long day, hour, minutes, seconds;
public CountDown() {
CDown();
}
public void CDown() {
Timer timer = new Timer();
JFrame jf = new JFrame();
final JLabel jl = new JLabel();
jf.add(jl);
jf.setVisible(true);
jf.setSize(400, 150);
jf.getDefaultCloseOperation();
timer.schedule(new TimerTask() {
@Override
public void run() {
Calendar cal = Calendar.getInstance();
cal.set(2010, 7, 1, 18, 0, 0);
// 返回历元到指定时间的毫秒数。
longTime = cal.getTimeInMillis();
// 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
currentTime = new Date().getTime();
distTime = longTime - currentTime;
day = ((distTime / 1000) / (3600 * 24));
hour = ((distTime / 1000) - day * 86400) / 3600;
minutes = ((distTime / 1000) - day * 86400 - hour * 3600) / 60;
seconds = (distTime / 1000) - day * 86400 - hour * 3600
- minutes * 60;
jl.setText(" java中文网下次改版倒计时" + day + " 天 " + hour + "小时 :" + minutes
+ "分钟 :" + seconds + "秒");
}
}, 0, 1000);
}
public static void main(String[] args) {
new CountDown();
}
}
运行结果: java中文网下次改版倒计时 3天 6小时:10分钟:10秒。
提示:显示结果每秒自动刷性。
关于Java程序如何实现多线程倒计时牌方面的内容就介绍到这里了,更多有关java方面的内容资讯,可以继续关注拓胜科技java技术资讯频道,或者有关拓胜java培训方面的问题,也可以在线咨询拓胜网络客服。