java Timer倒数计时器(急)

求一个用Timer写的倒数计时器,不要用线程休眠来实现的!要实现的就是倒数5秒,5,4,3,2,1,0当0的时候就停止计时。求JAVA代码。好的加分... 求一个用Timer写的倒数计时器,不要用线程休眠来实现的!要实现的就是倒数5秒,5,4,3,2,1,0当0的时候就停止计时。求JAVA 代码。好的加分 展开
 我来答
pingia
2010-06-09 · TA获得超过569个赞
知道小有建树答主
回答量:697
采纳率:100%
帮助的人:768万
展开全部
哎这个太简单了。。。
Timer t = new Timer();
int s = 5;

TimerTask tt = new TimerTask()
{
public void run()
{
if(s >0)
s--;
}
};

t.scheduleAtFixedRate(tt,0,1000);
bigorz
2010-06-09 · TA获得超过133个赞
知道小有建树答主
回答量:275
采纳率:0%
帮助的人:0
展开全部
用那么复杂吗?

二行代码行搞定了

楼主知道不知道,,sleep方法,,,
程序暂停用的,

public class Demo_01 {
static int i = 1 ;
public static void main(String[] args) throws Exception {
while(true){
Thread.sleep(1000);
System.out.println(5-i);
i++;
if(i==5)System.out.println("你去死吧");
if(i==5)break;
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cc...2@126.com
2010-06-09 · TA获得超过429个赞
知道小有建树答主
回答量:218
采纳率:100%
帮助的人:262万
展开全部
import java.util.*;
class MyTimer extends TimerTask
{
private Timer timer;
private int time;
MyTimer()
{

}
MyTimer(Timer timer,int time)
{
this.time=time;
this.timer=timer;
}
public void run()
{
System.out.println(this.time);
this.time--;
if(this.time<0)
{
this.timer.cancel();
}

}
}
public class eee{
public static void main(String args[])
{
Timer t = new Timer();
int s=5;
MyTimer mt=new MyTimer(t,s);
t.scheduleAtFixedRate(mt,0,1000);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
非情林q
2010-06-09 · TA获得超过987个赞
知道小有建树答主
回答量:1157
采纳率:100%
帮助的人:971万
展开全部
给个参考
public class time {
private boolean onetime = true;

public static void main(String[] args) {
time t = new time();
}

time() {
new ChangeLabel("00:5").start();
}

class ChangeLabel extends Thread // ?s•b??’ö
{

private int minitues;

private String Sminitues;

private int sound;

private String Ssound;

private String LabelTime;

public ChangeLabel(String time) {
// TODO Auto-generated constructor stub
onetime = false;
this.minitues = Integer.parseInt(time.substring(0, time
.indexOf(':')));

this.sound = Integer
.parseInt(time.substring(time.indexOf(':') + 1));
}

private long time1;

private long time2;

public void run() {
time1 = System.currentTimeMillis();
while (true) {
time2 = System.currentTimeMillis();
while (!(minitues == 0 & sound == 0) && time2 >= time1 + 1000) {
time1 = time2;
if (sound == 0) {
sound = 59;
minitues--;
} else {
sound--;
}
}
if (minitues == 0 && sound == 0) {
onetime = true;
System.out.println("ok");
break;
}
}
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式