[英]Timer and TimerTask Java
我希望我的程序打印“ Hello User”,十秒钟后打印“十秒钟消失了”,最后几秒钟后,打印“ Goodbye User”。 我只是不知道该怎么做或如何开始。 谢谢
这是代码:
import java.util.Timer;
import java.util.TimerTask;
public class S1p4 {
public static void main(String[] args) {
Timer timer = new Timer();
Task task = new Task();
timer.schedule(task, 1000, 1000);
}
}
class Task extends TimerTask {
int i=1;
@Override
public void run() {
i++;
System.out.println("Hello User");
if(i<=10){
System.out.println("Ten Seconds Have Gone By");
}
System.out.println("Goodbye User");
cancel();
System.exit(0);
}
}
编辑1:如果我将System.exit();取出,它将运行良好,但是我将用它替换什么呢? 因为我不想停止某个程序。
您使用的计时器还可以,我们只需要应用Thread.sleep即可解决您的问题。
class Task extends TimerTask {
@Override
public void run() {
System.out.println("Hello User");
try {
Thread.sleep(10000);
System.out.println("Ten Seconds Have Gone By");
Thread.sleep(5000);
System.out.println("Goodbye User");
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
尝试这个 :
class Task extends TimerTask {
int i=0;
@Override
public void run() {
i++;
if(i==1)
System.out.println("Hello User");
if(i==10){
System.out.println("Ten Seconds Have Gone By");
}
if(i==13){
System.out.println("Goodbye User");
cancel();
}
}
}
o / p:
第一次打印:Hello User 10秒后打印:十秒过去了。 13秒后:Goodby用户
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.