那如何用你发的这个代码输出以下例子:主线程开始运行! 主线程开始结束! 子线程A开始运行! 子线程B开始运行! 子线程A运行:0 子线程B运行:0 子线程A运行:1 子线程B运行:1 子线程A运行:2 子线程B运行:2 子线程A运行:3 子线程B运行:3 子线程A运行:4 子线程B运行:4 子线程A运行结束! 子线程B运行结束!
时间: 2024-03-07 19:48:31 浏览: 64
17.Handler消息传递机制
可以通过多线程的方式实现上述例子的输出。代码如下:
```java
public class Main {
public static void main(String[] args) {
System.out.println("主线程开始运行!");
// 创建子线程A和B
MyThread threadA = new MyThread("A");
MyThread threadB = new MyThread("B");
// 启动子线程A和B
threadA.start();
threadB.start();
// 主线程等待子线程A和B执行完成
try {
threadA.join();
threadB.join();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("主线程结束运行!");
}
}
class MyThread extends Thread {
private String name;
public MyThread(String name) {
this.name = name;
}
public void run() {
System.out.println("子线程" + name + "开始运行!");
for (int i = 0; i <= 4; i++) {
System.out.println("子线程" + name + "运行:" + i);
}
System.out.println("子线程" + name + "运行结束!");
}
}
```
在主线程中,先创建并启动子线程A和B,然后通过join()方法让主线程等待子线程A和B完成。在子线程A和B中,循环输出对应的编号,最后输出运行结束的消息。输出结果符合题目要求。
阅读全文