java多线程编写一个程序,创建两个线程分别输出奇数和偶数。其中,每个线程循环输出10次
时间: 2024-02-24 20:57:48 浏览: 179
好的,这是一个简单的Java程序,用于创建两个线程分别输出奇数和偶数,每个线程循环输出10次:
```java
public class PrintNumbers {
public static void main(String[] args) {
Thread oddThread = new Thread(new PrintOdd());
Thread evenThread = new Thread(new PrintEven());
oddThread.start();
evenThread.start();
try {
oddThread.join();
evenThread.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
static class PrintOdd implements Runnable {
@Override
public void run() {
for (int i = 1; i <= 20; i += 2) {
System.out.println(Thread.currentThread().getName() + ": " + i);
}
}
}
static class PrintEven implements Runnable {
@Override
public void run() {
for (int i = 2; i <= 20; i += 2) {
System.out.println(Thread.currentThread().getName() + ": " + i);
}
}
}
}
```
在这个程序中,我们定义了两个内部类 `PrintOdd` 和 `PrintEven`,分别用于输出奇数和偶数。在每个类中,我们使用了 `for` 循环来生成一系列奇数和偶数,并使用 `System.out.println` 方法输出它们。注意,我们在输出中加入了当前线程的名称,以便区分两个线程的输出。
然后,在主函数中,我们创建了两个线程 `oddThread` 和 `evenThread`,分别用于执行 `PrintOdd` 和 `PrintEven` 类。我们使用 `start` 方法启动这两个线程,并使用 `join` 方法等待它们的完成。注意,我们需要等待两个线程完成后才能退出程序,否则可能会出现输出的混乱。