欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

华为 Java 高级面试题:有两个线程,一个输出字母,一个输出数字,交替输出 1A2B3C4D.......26Z

最编程 2024-04-19 17:12:41
...
public static void main(String[] args) { char[] aI = "1234567".toCharArray(); char[] aC = "ABCDEFG".toCharArray(); Lock lock = new ReentrantLock(); Condition conditionT1 = lock.newCondition(); Condition conditionT2 = lock.newCondition(); new Thread(() -> { try { lock.lock(); for (char c : aI) { System.out.print(c); conditionT2.signal(); conditionT1.await(); } conditionT2.signal(); } catch (Exception e) { e.printStackTrace(); } finally { lock.unlock(); } }, "t1").start(); }