[java 라인] 두 라인이 교차해서 12a34b56c를 출력합니다...5152z
나의 네티즌 smith는 어느 날 라인을 연구하여 굳이 내가 이런 효과를 실현하도록 했다. 한 라인 인쇄 1-52 다른 라인 인쇄 a-z는synchronized를 통해 두 라인의 교차 출력을 제어했다. 1 2 a 3 4 b 5 6 c...5152z, 그래서 나는 매우 고통스럽게 다음과 같은 코드를 썼다.
public class Main {
static NumT numT = new NumT();
static CharT charT = new CharT();
static char[] chars = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
public static void main(String[] args) {
synchronized (numT) {
numT.start();
numT.notifyAll();
try {numT.wait();}catch (InterruptedException e){e.printStackTrace();}
charT.start();
}
}
static class NumT extends Thread{
@Override
public void run() {
try {sleep(1000);}catch (InterruptedException e){e.printStackTrace();}
for(int i=0;i<51;){
synchronized (numT) {
System.out.println(++i);
System.out.println(++i);
numT.notifyAll();
try {numT.wait();}catch (InterruptedException e){e.printStackTrace();}
}
}
}
}
static class CharT extends Thread{
@Override
public void run() {
for(int i=0;i<26;i++){
synchronized (numT) {
System.out.println(chars[i]);
numT.notifyAll();
try {numT.wait();}catch (InterruptedException e){e.printStackTrace();}
}
}
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.