Java for 문

조건식을 검사하는 작업은 while문이 있고, 반복 횟수가 정해진 작업에는 for 문으로 사용한다.

for 문 구조

for ( (초기 식); (조건식); (증감식) ) {
    // 코드 블록
}
  • 세미클론(;)은 코드 블록 괄화 끝부분을 입력하지 않아도 된다.

for문은 다음 순서로 실행

  1. 초기식: for문 한번만 실행함. 반복 횟수와 관련된 변수를 선언.
    1. int형 변수 i, j 로 쓰는게 일반적이다.
  2. 조건식: 참이면 코드블록을 실행하고, 거짓이면 for문을 종료한다.
  3. 코드 블록 or for문 종료: 조건을 만족하면 괄호의 코드를 실행한다.
  4. 증감식: 코드 블록 종료시 실행한다.
    1. 초기식에 넣은 int 변수를 증가시키는 것을 자주 사용한다.
  5. 조건식: 다시 조건을 검사하여 코드 블록을 실행할지 결정한다.
💡
초기식 int형과 증감식++을 자주 사용하지만,
int형이어야 한다는 법은 없다.

for 문 사용의 좋은점

  • 초기화, 조건식, 반복 작업의 처리가 편리하다.
  • 정해진 반복 횟수만큼의 수행에 적합함
  • for문 변수의 범위가 for 블록에 한정으로 관리하기 편하다

for 문 사용의 나쁜점

  • for 문 조건식이 내부에서 변경되는 경우 for 문 관리가 어려움
  • 복잡한 조건식 반복문은 while문으로 사용한다.

for 문 표현식을 입력하지 않는 경우

초기식, 조건식, 증감식을 모두 생략하면 무한반복되는 코드가 된다.

for(;;) {
    System.out.println("코드1");
}

n("코드1")번 출력함

참고사항

for 문 초기식 int i = 0; 를 선언한 경우 이 변수는 오롯이 for문 괄호{} 에서만 사용가능하다.

for(int i = 1; i <= 10; i++) {
    System.out.println(i + "번 출력");
}

위 코드는 10까지 표준 출력하는 코드이다. 만약 i를 끝부분을 출력하는 코드를 만들어 보도록 한다.

for(int i = o; i <=10; i++) {
    // 코드 불필요
}
System.out.println(i + "번 출력");

IDE 도구에서 변수 i부분을 사용할 수 없다는 뜻으로 빨강색으로 표시하게 된다.
만약 정상 출력하고 싶다고 다음과 같이 코드를 작성하도록 한다.

int out = 0;
for(int i = i; i<= 10; i++) {
    out = i
}
System.out.println(i + "번 출력");

바깥으로 넣을 수 없는 i 변수를 out 변수로 할당하여 바깥으로 출력하도록 한다.

Java 문제1 풀어보기

1~10까지 출력하는 코드를 작성해보도록 한다.

문제1 Java 코드

for(int i = 1;i <= 10; i++) {
    System.out.println(i);
}