자바 루프 구조
순차 구조의 프로그램 문은 한 번만 실행할 수 있습니다. 동일한 작업을 여러 번 수행하려면 루프 구조를 사용해야 합니다.
Java에는 세 가지 주요 루프 구조가 있습니다.
while 루프
do…while 루프
for 루프
Java5에서는 주로 배열을 위해 향상된 for 루프가 도입되었습니다.
while 루프
while은 가장 기본적인 루프이며 구조는 다음과 같습니다.
while( 布尔表达式 ) { //循环内容 }
부울 표현식이 true인 한 루프 본문은 계속 실행됩니다.
Example
public class Test { public static void main(String args[]) { int x = 10; while( x < 20 ) { System.out.print("value of x : " + x ); x++; System.out.print("\n"); } } }
위 예제의 컴파일 및 실행 결과는 다음과 같습니다.
value of x : 10 value of x : 11 value of x : 12 value of x : 13 value of x : 14 value of x : 15 value of x : 16 value of x : 17 value of x : 18 value of x : 19
do...while loop
while 문의 경우 조건이 만족되지 않으면 루프에 진입할 수 없습니다. 하지만 때로는 조건이 충족되지 않더라도 적어도 한 번은 실행해야 하는 경우가 있습니다.
do…while 루프는 while 루프와 유사하지만 차이점은 do…while 루프가 적어도 한 번 실행된다는 점입니다.
do { //代码语句 }while(布尔表达式);
참고: 부울 표현식은 루프 본문 뒤에 있으므로 부울 표현식을 감지하기 전에 명령문 블록이 실행되었습니다. 부울 표현식이 true로 평가되면 부울 표현식이 false로 평가될 때까지 명령문 블록이 실행됩니다.
Example
public class Test { public static void main(String args[]){ int x = 10; do{ System.out.print("value of x : " + x ); x++; System.out.print("\n"); }while( x < 20 ); } }
위 예제의 컴파일 및 실행 결과는 다음과 같습니다.
value of x : 10 value of x : 11 value of x : 12 value of x : 13 value of x : 14 value of x : 15 value of x : 16 value of x : 17 value of x : 18 value of x : 19
for 루프
모든 루프 구조는 while 또는 do...while로 표현할 수 있지만 Java에서는 또 다른 문인 for 루프를 제공합니다. , 일부 루프 구조를 더 단순하게 만들었습니다.
for 루프의 실행 횟수는 실행 전에 결정됩니다. 구문 형식은 다음과 같습니다.
for(初始化; 布尔表达式; 更新) { //代码语句 }
for 루프에 대한 지침은 다음과 같습니다.
초기화 단계가 먼저 수행됩니다. 유형을 선언할 수 있지만 하나 이상의 루프 제어 변수를 초기화하거나 빈 문일 수 있습니다.
그런 다음 부울 표현식의 값을 테스트합니다. true이면 루프 본문이 실행됩니다. false인 경우 루프가 종료되고 루프 본문 다음에 오는 명령문의 실행이 시작됩니다.
루프를 한 번 실행한 후 루프 제어 변수를 업데이트합니다.
부울 표현식을 다시 확인하세요. 위의 프로세스를 루프로 수행합니다.
Example
public class Test { public static void main(String args[]) { for(int x = 10; x < 20; x = x+1) { System.out.print("value of x : " + x ); System.out.print("\n"); } } }
위 예제의 컴파일 및 실행 결과는 다음과 같습니다.
value of x : 10 value of x : 11 value of x : 12 value of x : 13 value of x : 14 value of x : 15 value of x : 16 value of x : 17 value of x : 18 value of x : 19
Java Enhanced for loop
Java5에서는 주로 배열에 사용되는 Enhanced for 루프를 도입합니다.
Java의 향상된 for 루프 구문 형식은 다음과 같습니다.
for(声明语句 : 表达式) { //代码句子 }
선언문: 새 지역 변수를 선언합니다. 변수 유형은 배열 요소 유형과 일치해야 합니다. 그 범위는 루프 문 블록으로 제한되며, 그 값은 이때 배열 요소의 값과 같습니다.
Expression: Expression은 액세스할 배열의 이름이거나 배열을 반환하는 메서드입니다.
Example
public class Test { public static void main(String args[]){ int [] numbers = {10, 20, 30, 40, 50}; for(int x : numbers ){ System.out.print( x ); System.out.print(","); } System.out.print("\n"); String [] names ={"James", "Larry", "Tom", "Lacy"}; for( String name : names ) { System.out.print( name ); System.out.print(","); } } }
위 예제의 컴파일 및 실행 결과는 다음과 같습니다.
10,20,30,40,50, James,Larry,Tom,Lacy,
break 키워드
break는 주로 루프 문이나 스위치 문에서 전체 문 블록을 벗어나기 위해 사용됩니다.
break는 가장 안쪽 루프에서 벗어나 루프 아래에 있는 명령문을 계속 실행합니다.
Grammar
break의 사용법은 매우 간단하며 루프 구조의 명령문입니다.
break;
Example
public class Test { public static void main(String args[]) { int [] numbers = {10, 20, 30, 40, 50}; for(int x : numbers ) { if( x == 30 ) { break; } System.out.print( x ); System.out.print("\n"); } } }
위 예제의 컴파일 및 실행 결과는 다음과 같습니다.
10 20
continue 키워드
continue는 모든 루프 제어 구조에 적용 가능합니다. 이 기능은 프로그램이 루프의 다음 반복으로 즉시 점프할 수 있도록 하는 것입니다.
for 루프에서 continue 문은 프로그램이 즉시 업데이트 문으로 점프하도록 합니다.
while 또는 do...while 루프에서 프로그램은 즉시 부울 표현식의 판단문으로 점프합니다.
Grammar
continue는 루프 본문의 간단한 문입니다.
continue;
Example
public class Test { public static void main(String args[]) { int [] numbers = {10, 20, 30, 40, 50}; for(int x : numbers ) { if( x == 30 ) { continue; } System.out.print( x ); System.out.print("\n"); } } }
위 예제의 컴파일 및 실행 결과는 다음과 같습니다.
10 20 40 50