在Java中,可以使用兩個線程交替打印數字。以下是一個示例代碼:
public class AlternatePrinting {
public static void main(String[] args) {
Object lock = new Object();
Runnable printOdd = () -> {
synchronized(lock) {
for (int i = 1; i <= 10; i += 2) {
System.out.println(i);
lock.notify();
try {
lock.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
Runnable printEven = () -> {
synchronized(lock) {
for (int i = 2; i <= 10; i += 2) {
System.out.println(i);
lock.notify();
try {
lock.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
Thread oddThread = new Thread(printOdd);
Thread evenThread = new Thread(printEven);
oddThread.start();
evenThread.start();
}
}
在這個示例中,我們創建了兩個線程,一個線程負責打印奇數,另一個線程負責打印偶數。通過使用wait()和notify()方法,我們可以使兩個線程交替打印數字。注意,我們使用一個共享鎖對象來實現線程之間的同步。