TimerTask、Timer类实现每隔3秒输出一句话,控制台输入x退出
时间: 2024-05-28 21:09:30 浏览: 14
好的,我明白了。关于你的问题,可以使用Timer和TimerTask类的组合来实现。可以按照以下代码示例来实现:
Timer timer = new Timer();
TimerTask task = new TimerTask() {
public void run() {
System.out.println("每隔3秒输出一句话");
}
};
timer.scheduleAtFixedRate(task, 0, 3000);
为了实现通过控制台输入x来退出循环,可以在TimerTask的run方法中添加一个判断条件,如下:
TimerTask task = new TimerTask() {
public void run() {
if (input.equalsIgnoreCase("x")) {
System.exit(0);
}
System.out.println("每隔3秒输出一句话");
}
};
这样,当输入x时,程序会退出。希望这能帮助到你。
相关问题
TimerTask、Timer类实现每隔3秒输出一句话,控制台输入x退出''
好的,我知道了。关于你的问题,这里有一个示例代码可以实现你的要求:
```
import java.util.Timer;
import java.util.TimerTask;
import java.util.Scanner;
public class TimerDemo {
public static void main(String[] args) {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
System.out.println("每隔3秒输出一句话");
}
}, 0, 3000);
Scanner scanner = new Scanner(System.in);
while (true) {
String input = scanner.nextLine();
if ("x".equals(input)) {
timer.cancel();
System.out.println("定时任务已停止");
break;
}
}
}
}
```
这个程序会启动一个定时任务,每隔3秒输出一句话,同时监听控制台输入。你可以在控制台输入"x"来停止定时任务。注意,如果你想在程序中使用这段代码,需要将类名改为你的项目中的类名。
用java写一个定时任务,每隔20秒输出一段话
可以使用Java中的Timer和TimerTask类来实现定时任务,每隔20秒输出一段话的需求可以这样实现:
```java
import java.util.Timer;
import java.util.TimerTask;
public class TimerExample {
public static void main(String[] args) {
Timer timer = new Timer();
TimerTask task = new TimerTask() {
@Override
public void run() {
System.out.println("定时任务执行了!");
}
};
// 延迟0秒后开始执行任务,每隔20秒执行一次
timer.schedule(task, 0, 20000);
}
}
```
这段代码中,创建了一个Timer对象和一个继承自TimerTask的匿名内部类。在匿名内部类的run()方法中,输出了"定时任务执行了!"的提示语句。然后使用timer.schedule()方法,指定任务从延迟0秒后开始执行,并且每隔20秒执行一次。
运行程序后,你将会看到每隔20秒会输出一次"定时任务执行了!"。你可以根据自己的需求修改输出的内容和时间间隔。