4) 제어문2 - 반복문

dev-mage·2022년 9월 19일
0

Hello Java World!

목록 보기
9/32
post-thumbnail

Java의 반복문(for문, while문)

반복문은 어떤 작업이 반복적으로 수행되도록 할 때 사용되며 for문과 while문 그리고 while문의 변형인 do-while문이 있다. for문과 while문은 구조와 기능이 유사하여 어느 경우에나 서로 변환이 가능하며, 주로 반복 횟수를 알고 있을 때는 for문을, 그렇지 않을 때는 while문을 사용한다.

for문

  • 초기화, 조건식, 증감식, 블럭으로 이루어져 있음.
  • 조건식이 참인 동안 블럭 내의 문장들을 반복하다 거짓이 되면 반복문을 벗어남.
for (초기화; 조건식; 증감식) {
	// 조건식이 참인 동안 수행
}
  • 수행 순서
    1. 초기화 수행

    2. 조건식이 참인 동안 조건식 → 수행될 문장 → 증감식의 순서로 반복

    3. 조건식이 거짓이 되면 for문 전체를 빠져나감.

      for

  • 초기화
    • 반복문에 사용될 변수를 초기화하는 부분.
    • 처음 한번만 수행.
    • 보통 변수 하나로 for문을 제어하지만 둘 이상의 변수가 필요할 때는 쉼표(,)를 구분자로 변수를 초기화 할 수 있음. 단, 두 변수의 타입은 같아야 함.
  • 조건식
    • 조건식의 값이 참이면 반복을 계속하고 거짓이면 반복을 중단하고 for문을 벗어남.
  • 증감식
    • 반복문을 제어하는 변수의 값을 증감시키는 식.
    • 매 반복마다 변수의 값이 증감식에 의해 점진적으로 변하다가 결국 조건식이 거짓이 되어 for문을 벗어나게 됨.
    • 쉼표(,)를 이용해서 두 문장 이상을 하나로 연결해서 쓸 수 있음.
  • 위의 세 가지 요소는 모두 생략 가능.
    for (;;) { ... } // 초기화, 조건식, 증감식 모두 생략. 조건식은 참이 되고 무한 반복문이 됨.

while문

  • 조건식과 블럭만으로 이루어져 있음.
  • 조건식이 참인 동안 블럭 내의 문장 반복.
while (조건식) {
	// 조건식의 결과가 참인 동안 반복
}
  • 수행 순서
    1. 조건식이 참이면 블럭 안으로 들어가고 거짓이면 while문을 벗어.

    2. 블럭의 문장을 수행하고 다시 조건식으로 돌아감.

      while

  • do-while문
    • 기본적인 구조는 while문과 같으나 조건식과 블럭의 순서를 바꿔놓은 것.

    • 블럭을 먼저 수행한 후 조건식을 평가

    • while문은 조건식의 결과에 따라 블럭이 한 번도 수행되지 않을 수 있지만, do-while문은 최소한 한 번은 수행될 것을 보장함.

      do {
      	// 조건식의 결과가 참일 때 수행.(처음 한 번은 무조건 실행됨.)
      } while (조건식);

break문과 continue문

  • break
    • 자신이 포함된 가장 가까운 제어문을 벗어남.
  • continue
    • 반복문 내에서만 사용.
    • 반복이 진행되는 도중에 continue문을 만나면 반복문의 끝으로 이동하여 다음 반복으로 넘어감.
      • for문: 증감식으로 이동.
      • while / do-while문: 조건식으로 이동.

이름 붙은 반복문

  • 중첩 반복문 앞에 이름을 붙이고 break문과 continue문에 이름을 지정해 줌으로써 하나 이상의 반복문을 벗어나거나 반복을 건너뛸 수 있다.
// for문에 Loop1이라는 이름을 붙임
Loop1 : 반복문1 {
		반복문1-1 {
				.
				.
				.
				break Loop1; // 반복문1-1이 아닌 반복문1을 벗어남
		}
}

References

  • 자바의 정석 CHAPTER 4

0개의 댓글