Scanner in = new Scanner(System.in);
String v = in.next(); //문자열 v를 입력받는다.
String[] rs = v.split(""); //split 이용하여 입력받은 문자열 자르기 //입력된 String 숫자 만큼 배열 선언
int[] Array = new int[rs.length]; //rs배열 원소의 개수
int b = 0;
/* 배열의 길이만큼 for반복하게 되는데,
배열의 0번째 인덱스 위치의 값부터 꺼내어서 변수에 저장후 반복적으로 실행하고자 하는 명령문을 수행하는 원리.*/
for( String a : rs ){ //rs 배열의 모든 원소를 하나씩 a에 담아 실행 //향상된 for문이다 => for(자료형 변수 : 배열명)
int num = Integer.parseInt(a); //a는 문자열타입이므로 정수타입으로 변환 // 이를 이용하여 배열의 값을 간단하게 불러옴
Array[num]++; //배열의 길이 만큼 반복한다.
}
for( int number : Array ){ //각 배열의 숫자가 1이면 b 에 증가
System.out.println(number);
if( number == 1 ){
++b;
}
}
if( b == 10 ){
System.out.println("true");
}else{
System.out.println("false");
}
}
요런 코드인데 밑에 for 문2개가 돌아가는 알고리즘하고 방식이 좀 헷갈리는데 설명해줄 수 있음? 배열 들어오니까 자꾸 헷갈리네