(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)
초기식, 조건식, 증감식 모두를 기본적으로 포함하고 있고, 가장 많이 사용되는 반복문이다. 반복 과정은 while문과 같다.
(자바(Java) while문 : https://devmoomin.tistory.com/60)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
int total = 1, num;
System.out.print("num의 값 입력 : ");
num = keyboard.nextInt();
for(int i = 1; i <= num; ++i) {
total *= i;
}
System.out.println(num + "! = " + total);
}
}
|
cs |
Line 6 : 정수형 변수 total, num 선언 후 total을 1로 초기화
Line 8 : num에 값을 입력 받음
Line 10 : i가 1부터 1씩 증가하면서, num보다 작거나 같은 동안 반복 (num회 반복)
Line 11 : total에 i의 값을 누적해서 곱해줌
Line 14 : 결과값 출력
■ for문 무한루프
- for문은 조건을 만족하는 동안 계속해서 반복 실행되는데, 만약 조건문을 계속해서 만족하게 된다면 for문을 빠져나오지 못하고 계속 실행하는 무한 루프에 빠지게 된다.
1
2
3
4
5
6
7
|
public class Main {
public static void main(String[] args) {
for(int i = 1; i > 0; ++i) {
System.out.println("i = " + i);
}
}
}
|
cs |
Line 3 : i가 1부터 1씩 증가하면서, 0보다 큰 동안 반복
※ i의 값은 무조건 0보다 크므로 무한 루프에 빠지게 된다.
■ for문 중첩
- for문 안에 for문을 포함시킨 것으로, 반복 구조 내에서 또 다른 반복 구조가 형성된다.
1
2
3
4
5
6
7
8
9
10
11
|
public class Main {
public static void main(String[] args) {
for(int i = 1; i <= 3; ++i) {
System.out.println("[i = " + i + "일 때]");
for(int j = 1; j <= 2; ++j) {
System.out.println("j = " + j);
}
}
}
}
|
cs |
Line 3 : i가 1부터 1씩 증가하면서, 3보다 작거나 같은 동안 반복
Line 4 : i의 값 출력
Line 6 : j가 1부터 1씩 증가하면서, 2보다 작거나 같은 동안 반복
Line 7 : j의 값 출력
i | j |
1 | 1 |
1 | 2 |
2 | 1 |
2 | 2 |
3 | 1 |
3 | 2 |
'Java' 카테고리의 다른 글
자바(Java) 객체 지향 프로그래밍(OOP) (0) | 2020.06.30 |
---|---|
자바(Java) break, continue문 (0) | 2020.06.26 |
자바(Java) do-while문 (0) | 2020.06.26 |
자바(Java) while문 (0) | 2020.06.26 |
자바(Java) switch-case문 (0) | 2020.06.25 |