在进行多线程学习时一个练习题:使用两个线程分别打印数字和字母,并控制两个线程交替进行。打印结果:1A2B........,但是在实现代码后发现线程不可以正常结束如图,求大神解围
public class TestPrint {
public static void main(String[] args){
Object lock = new Object();
new Thread(()->{
synchronized (lock) {
for (int i = 1; i <= 26; i++) {
System.out.println(i);
lock.notify();
try {
lock.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
new Thread(()->{
synchronized (lock) {
for (int i = 1; i <= 26; i++) {
System.out.println((char)(i+64));
lock.notify();
try {
lock.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
}
}