编写一个应用程序创建两个线程,一个线程打印输出1~1000之间所有的奇数, 另外一个线程打印输出1~1000之间所有的偶数, 要求两个线程随机休眠一段时间后继续打印输出下一个数。请使用Tread类编程实现。
时间: 2024-02-29 12:52:34 浏览: 62
理解多线程,写一个多线程应用程序,要求能在用户级实现线程的调度,如启动、挂起、恢复、停止,的C thread、java thread实现。
好的,这是一个典型的多线程应用程序,以下是使用 Thread 类编写的示例代码:
```java
public class PrintNumbers implements Runnable {
private int start;
private int end;
private boolean isOdd;
public PrintNumbers(int start, int end, boolean isOdd) {
this.start = start;
this.end = end;
this.isOdd = isOdd;
}
@Override
public void run() {
for (int i = start; i <= end; i++) {
if (isOdd && i % 2 != 0) {
System.out.println(Thread.currentThread().getName() + ": " + i);
} else if (!isOdd && i % 2 == 0) {
System.out.println(Thread.currentThread().getName() + ": " + i);
}
try {
Thread.sleep((long) (Math.random() * 1000));
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
Thread oddThread = new Thread(new PrintNumbers(1, 1000, true), "Odd Thread");
Thread evenThread = new Thread(new PrintNumbers(1, 1000, false), "Even Thread");
oddThread.start();
evenThread.start();
}
}
```
在这个示例中,我们创建了一个 `PrintNumbers` 类,实现了 `Runnable` 接口,并重写了 `run()` 方法来打印出指定范围内的奇数或偶数。在 `main()` 方法中,我们创建了两个线程,一个打印奇数,一个打印偶数,并在启动线程之后,两个线程将随机休眠一段时间后继续打印输出下一个数。
希望这个示例可以帮助你理解如何使用 `Thread` 类来创建多线程应用程序。
阅读全文