Java

반복문 - for 문, break, continue

에어팟맥스 2022. 6. 10. 00:25

 

 ==== 반복문(loop) ====
  
  ※ for 문의 형식
  
  for(초기화; 조건식; 증감식){
     반복해서 실행할 문장;
  }
  
  
  ▣ 순서
    1) 초기화;
    2) 조건식; (조건식이 참(true)이라면 반복해서 실행할 문장;을 실행하고서 } 을 못빠져나간다.         
                              조건식이 거짓(false)이라면 반복해서 실행할 문장;을 실행하지 않고
               } 을 빠져나간다.)
    3) 증감식
    4) 조건식; (조건식이 참(true)이라면 반복해서 실행할 문장;을 실행하고서 } 을 못빠져나간다.         
                              조건식이 거짓(false)이라면 반복해서 실행할 문장;을 실행하지 않고
               } 을 빠져나간다.) 
    5) 증감식
    6) 조건식; (조건식이 참(true)이라면 반복해서 실행할 문장;을 실행하고서 } 을 못빠져나간다.         
                              조건식이 거짓(false)이라면 반복해서 실행할 문장;을 실행하지 않고
               } 을 빠져나간다.)  
  

------------------------------------------------------------------------------------------------------------------------------------------

 

=============

  1. 안녕자바~~
  2. 안녕자바~~
  3. 안녕자바~~
  4. 안녕자바~~
  5. 안녕자바~~
  6. 안녕자바~~
  7. 안녕자바~~
  8. 안녕자바~~
  9. 안녕자바~~
=============

를 for 문을 이용해 표현하기

 

public class Main_for_test1 {

	public static void main(String[] args) {
		
		for( int i=0; i<10; i++) {
			System.out.println((i+1)+". 안녕 자바~~");
		}

------------------------------------------------------------------------------------------------------------------------------------------

 

 

=============

  1. 안녕 이클립스~~
  3. 안녕 이클립스~~
  5. 안녕 이클립스~~
  7. 안녕 이클립스~~
  9. 안녕 이클립스~~
=============

를 for 문을 이용해 표현하는 두 가지 방법

 

방법 1

		for( int i=0; i<10; i+=1) {
			System.out.println((i+1)+". 안녕 이클립스~~");
		}

방법 2

		for( int i=0; i<10; i++) {
			System.out.println(++i + ". 안녕 이클립스~~");
		}

방법 3

		for( int i=0; i<10; i+=2) {
			System.out.println((i+1) + ". 안녕 이클립스~~");
		}

------------------------------------------------------------------------------------------------------------------------------------------

이번엔 역순으로

=============

9. 안녕 Spring~~
7. 안녕 Spring~~
5. 안녕 Spring~~
3. 안녕 Spring~~
1. 안녕 Spring~~
=============

를 for 문을 이용해 표현하는 여러가지 방법

 

		for(int i=10; i>0; i--) {
			if(i%2 == 1)
			  System.out.println(i+". 안녕 Spring~~");
		} // 방법 1
        
		for(int i=10; i>0; i-=2) {
			System.out.println( (i-1) +". 안녕 Spring~~");
		} // 방법 2
		
		for(int i=10; i>0; i--) {
			System.out.println( --i + ". 안녕 Spring~~");
		} // 방법 3
		
		for(int i=0, j=9; i<5; i++, j-=2) {
			System.out.println( j + ". 안녕 Spring~~");
		} // 방법 4

※ break

반복문에서 break; 를 만나면 가장 가까운 반복문(for)을 벗어난다.

package my.day07.a.For;

public class Main_for_test2_break_continue {

	public static void main(String[] args) {
		
		System.out.println(">>> 1. break <<<");
		
		for (int i=0; i<10; i++) {
			if(i==5) 
				break; // 반복문에서 break; 를 만나면 가장 가까운 반복문(for)을 벗어난다.
			
			System.out.println(i+1);
		} // end of for

 

 

 

※ continue

continue 를 만나면 실행순서가 밑으로 내려가지 않고 가장 가까운 반복문의 증감식으로 이동한다.

 

		int cnt = 0;
		
		for(;;) { // 무조건문
			System.out.println( ++cnt + "번째 반복");
			if(cnt == 10)
				break;
		} // end of for
		
		System.out.println("\n>>> 2. continue <<<");
		
		for(int i=0; i<10; i++) {
			if( (i+1)%2 == 0 )  // 출력하고자 하는 값이 짝수 라면
				continue;		// continue 를 만나면 실행순서가 밑으로 내려가지 않고 가장 가까운 반복문의 증감식으로 이동한다.
			
			System.out.print( (i+1) + " " );
		} // end of for
		  // 1 3 5 7 9  
		
	} // end of main()

}