본문 바로가기

개발/Java

[Java] 자바 - for문 (반복문)

< for문 >

 

- 소괄호 안에 반복을 지정하는 부분이 있고, 초기식; 조건식; 증감식 세 가지로 이루어진다.

- 각각의 식은 ;(세미콜론)으로 구분

- 반복의 횟수를 명확히 알 수 있을때 주로 사용

- 중첩 사용 가능 (삼중for문 권장X)

 

[ 표현법 ]

 

for (초기식; 조건식; 증감식) {  // 반복횟수 지정하는 요소들

     반복적으로 실행시키고자 하는 코드

}

 

- 초기식 : 반복문이 시작될 때, "초기에 단 한 번만 실행"될 구문

                반복문에서 사용할 변수를 선언하고 초기화하는 구문 => int i = 0; - 제어변수

 

- 조건식 : "반복문이 실행될 조건"을 작성하는 구문

                조건식이 true일 경우, 반복을 실행

                조건식이 false일 경우, 반복문을 멈추고 빠져나옴 => i < 10;

 

- 증감식 : "반복문을 제어하는 변수값"을 증감시키는 구문

                보통 초기식에서 선언된 변수를 가지고 증감식 작성

                이때, 보통 증감연산자가 주로 쓰임 => i++;

 

// i값이 1에서부터 5와 같아질때까지 1씩 증가
for(/* 1 */int i = 1; /* 2 */i <= 5; /* 4 */i++) { // 1번은 처음에만, 나머지 반복시 2번부터
    /* 3 */System.out.println(i + "번 반복");
} // 조건식이 false이면 블럭을 빠져나옴
  // 제어변수는 for문(반복문) 내에서만 작동 - 끝나면 stack에서 날아감

 

for(int i = 1; i <= 5; i += 2) { // 증감식에 복합대입연산자 사용 가능
	System.out.println("i : " + i);
}

 

// 구구단
// 사용자한테 단을 입력받아 구구단을 출력해보자!
// 메소드 이름 gugudan();
	
public void gugudan() {
		
	Scanner sc = new Scanner(System.in);
		
	System.out.println("단을 입력해주세요. > ");
	int dan = sc.nextInt();
		
	System.out.println(dan + "단");
	// 반복되는 구문은 반복문으로 치환이 가능하다.
    
	for (int i = 1; i <= 9; i++) {			
		System.out.println(dan + " X " + i + " = " + (dan * i)); // println()사용
		System.out.printf("%d X %d = %d\n", dan, i, dan * i); // printf()사용
	}
}