Java 루프에서 레이블의 역할 깊이 분석
통상적으로 우리가 사용하는continue (또는break) 문장은 라벨이 없습니다. 이것은 기본적으로 현재 순환에서continue (또는break) 문장을 실행하는 것입니다.라벨이 있는 순환은 실제로 이 순환에 이름을 지어줍니다. "continue (또는break) + 라벨"문장을 사용할 때 실제로는 라벨이 있는 순환에서continue (또는break) 문장을 실행합니다.
지금 우리는 세 가지 예로 라벨이 달린 순환을 설명한다.
1. 레이블이 없는 이중 순환
package javaleanning;
public class LableTest {
public static void main(String[] args) {
for(int i = 0; i < 10; i++){
for(int j = 0; j < 10; j++){
System.out.print("("+i+","+j+") ");
}
System.out.println();
}
}
}
실행 결과(0,0) (0,1) (0,2) (0,3) (0,4) (0,5) (0,6) (0,7) (0,8) (0,9)
(1,0) (1,1) (1,2) (1,3) (1,4) (1,5) (1,6) (1,7) (1,8) (1,9)
(2,0) (2,1) (2,2) (2,3) (2,4) (2,5) (2,6) (2,7) (2,8) (2,9)
(3,0) (3,1) (3,2) (3,3) (3,4) (3,5) (3,6) (3,7) (3,8) (3,9)
(4,0) (4,1) (4,2) (4,3) (4,4) (4,5) (4,6) (4,7) (4,8) (4,9)
(5,0) (5,1) (5,2) (5,3) (5,4) (5,5) (5,6) (5,7) (5,8) (5,9)
(6,0) (6,1) (6,2) (6,3) (6,4) (6,5) (6,6) (6,7) (6,8) (6,9)
(7,0) (7,1) (7,2) (7,3) (7,4) (7,5) (7,6) (7,7) (7,8) (7,9)
(8,0) (8,1) (8,2) (8,3) (8,4) (8,5) (8,6) (8,7) (8,8) (8,9)
(9,0) (9,1) (9,2) (9,3) (9,4) (9,5) (9,6) (9,7) (9,8) (9,9)
2. 라벨이 있는 이중 순환, "break+라벨"문장
이 예에서 이중 for 순환이다. 우리는 바깥쪽에 시작에 따라 라벨을 붙였다(즉 바깥쪽 순환에 이름을 붙였다)'outerCycle'은 안쪽 순환에서'break outerCycle'을 사용할 때 outerCycle이라는 순환에서 직접break 문장을 사용하는 것과 같다.
package javaleanning;
public class LableTest {
public static void main(String[] args) {
outerCycle:
for(int i = 0; i < 10; i++){
for(int j = 0; j < 10; j++){
if(j == 5){
break outerCycle;
}
System.out.print("("+i+","+j+") ");
}
System.out.println();
}
}
}
실행 결과(0,0) (0,1) (0,2) (0,3) (0,4)
3. 라벨이 있는 이중 순환, "continue+라벨"문장
이 예에서 이중 for 순환이다. 우리는 바깥쪽에 시작에 따라 라벨을 붙인다. (즉 바깥쪽 순환에 이름을 붙인다)'outerCycle'은 안쪽 순환에서'continue outerCycle'을 사용할 때 outerCycle이라는 순환에서continue 문장을 직접 사용하는 것과 같다.
package javaleanning;
public class LableTest {
public static void main(String[] args) {
outerCycle:
for(int i = 0; i < 10; i++){
for(int j = 0; j < 10; j++){
if(j == 5){
continue outerCycle;
}
System.out.print("("+i+","+j+") ");
}
System.out.println();
}
}
}
실행 결과(0,0) (0,1) (0,2) (0,3) (0,4) (1,0) (1,1) (1,2) (1,3) (1,4) (2,0) (2,1) (2,2) (2,3) (2,4) (3,0) (3,1) (3,2) (3,3) (3,4) (4,0) (4,1) (4,2) (4,3) (4,4) (5,0) (5,1) (5,2) (5,3) (5,4) (6,0) (6,1) (6,2) (6,3) (6,4) (7,0) (7,1) (7,2) (7,3) (7,4) (8,0) (8,1) (8,2) (8,3) (8,4) (9,0) (9,1) (9,2) (9,3) (9,4)
주의: 실제 운행 결과는 모두 한 줄에 표시됩니다. (즉 줄 바꾸기 문장을 실행하지 않았습니다.) 현재 이러한 표시 결과는 단지 조판의 원인일 뿐입니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
38. Java의 Leetcode 솔루션텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.