课堂练习Java >编写一个应用程序创建两个线程,分别使用Thread子类和 Thread类编程实现 一个线程打印输出1~1000之间所有的奇数, >另外一个线程打印输出1~1000之间所有的偶数, >要求两个线程休眠一段时间后继续打印输出下一个数
时间: 2025-01-02 15:46:22 浏览: 19
在Java中,你可以通过创建`Thread`子类或者直接实例化`Thread`并重写其`run()`方法来创建并启动线程。这里是一个简单的示例,展示了如何使用`Thread`类和`Thread`子类来分别处理奇数和偶数的打印:
```java
public class PrintNumbers {
private static final int LIMIT = 1000;
private static int currentNumber = 1;
public static void main(String[] args) {
// 创建并启动奇数线程
Thread oddThread = new Thread(new OddNumberPrinter());
oddThread.start();
// 创建并启动偶数线程
Thread evenThread = new Thread(new EvenNumberPrinter());
evenThread.start();
}
static class OddNumberPrinter implements Runnable {
@Override
public void run() {
while (currentNumber <= LIMIT) {
if (currentNumber % 2 != 0) {
System.out.println(Thread.currentThread().getName() + ": " + currentNumber++);
try {
// 休眠一段时间
Thread.sleep(50); // 可以调整这个时间
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
static class EvenNumberPrinter implements Runnable {
@Override
public void run() {
while (currentNumber <= LIMIT) {
if (currentNumber % 2 == 0) {
System.out.println(Thread.currentThread().getName() + ": " + currentNumber++);
try {
Thread.sleep(50); // 同样可以调整睡眠时间
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
}
阅读全文