用Java代码写两个线程,一个线程打印A-Z,另一个线程打印1-52,打印顺序是A12B34C56...Z5152
时间: 2024-05-08 15:20:17 浏览: 14
好的,以下是Java代码实现:
```
public class PrintThread implements Runnable {
private int start;
private static Object lock = new Object();
public PrintThread(int start) {
this.start = start;
}
@Override
public void run() {
synchronized (lock) {
for (int i = start; i <= start + 25; i++) {
System.out.print((char) (i + 'A' - 1));
System.out.print((2 * i - 1));
System.out.print((2 * i));
}
}
}
public static void main(String[] args) {
Thread t1 = new Thread(new PrintThread(1));
Thread t2 = new Thread(new PrintThread(27));
t1.start();
t2.start();
}
}
```
通过创建两个线程,一个线程从A开始打印英文字母,另一个线程从1开始打印数字,并按照题目要求交替打印输出即可。为了避免线程间的竞争问题,使用synchronized锁定一个对象,确保打印顺序正确无误。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)