반복문이란
반복문은 어떤 작업이 반복적으로 수행되도록 할 때 사용된다.
반복문의 종류로는 for문, while문, 그리고 while문의 변형인 do-while문이 있다.
기본적인 반복문도 중요하지만, 반복문은 조건문과 같이 활용할 때 그 중요성이 더욱 높아진다.
반복문을 자연스럽게 활용할 수 있도록 열심히 연습하자.
이 글에서는 for 문에 대해서 알아보자.
반복문이 없다면..
반복문이 없다는 상황을 가정하고, "blues"라는 문자열을 100번 출력을 해야한다고 가정하면
System.out.println("blues");
System.out.println("blues");
System.out.println("blues");
System.out.println("blues");
.
.
.
위와 같은 코드를 100번 반복해야한다. 어찌어찌 작성을 한다고 해도 "blues"라는 문자를 "reds"로 바꾸려면 또다시 반복적인 작업을 해야한다. 이는 매우 귀찮을 뿐더러 실수가 발생할 가능성이 매우 높다.
그렇게 때문에 우리는 이러한 반복적인 작업은 반복문을 활용하여 해결해야한다 !!
for 문의 구조와 수행순서
for (초기화; 조건식; 증감식) {
"조건식이 true인 동안 수행될 로직"
}
위와 같은 코드로 for문은 구조를 이루고 있다.
for문의 실행순서는 다음과 같다.
- 초기화
- 조건식
- 조건식이 true이면 로직이 수행
- 증감식
- 다시 조건식이 true이면 로직이 수행되고 증감식, 조건식, 로직이 반복 수행된다.
- 조건식이 false가 되면 반복문을 탈출한다.
초기화
초기화는 반복문에 사용될 변수를 초기화하는 부분이다.
둘 이상의 변수가 필요하면 콤마(,)를 구분자로 사용하여 변수를 초기화하며 된다.
for(int i=0; 조건식; 증감식) {} //i를 0으로 초기화
for(int i=0,j=0; 조건식; 증감식) {} // i와 j를 0으로 초기화
조건식
조건식의 값이 true이면 반복문이 수행되고, false이면 반복문이 중단된다.
조건식이 생략되면 무조건 true로 간주되어 반복문이 무한 반복되어 실행된다.
증감식
증감식은 반복문을 제어하는 변수의 값을 증가 또는 감소시키는 식을 말한다.
자주 사용되는 증감식은 변수의 값을 1씩 증가시키는 '++'이다.
for(int i=0; i<5; i++) {} //i가 0부터 4까지 1씩 증가
for(int i=0; i<5; i+=2) {} //i가 0부터 4까지 2씩 증가
for(int i=0; i<5; i*=3) {} //i가 0부터 4까지 3배씩 증가
위의 구조를 활용한 간단한 예제는 다음과 같다.
for(int i=0; i<5; i++) {
System.out.println(i);
}
실행결과는 다음과 같다.
0
1
2
3
4
for 문의 중첩
조건문과 마찬가지로 for문 안에 for문을 중첩으로 사용할 수 있다.
public class Forprac {
public static void main(String[] args) {
for(int i=0; i<3; i++) {
for(int j=0; j<3; j++) {
System.out.println("("+i+","+j+")");
}
}
}
}
결과는 다음과 같다.
(0,0)
(0,1)
(0,2)
(1,0)
(1,1)
(1,2)
(2,0)
(2,1)
(2,2)
논리의 순서대로 중첩 for문이 잘 수행되는 것을 볼 수 있다.
참고
https://opentutorials.org/module/516/5366
Java의 정석 기초편 (링크 참고)
https://www.youtube.com/watch?v=6UjmGzjynQw&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=36
'Java > Java 정리' 카테고리의 다른 글
| [Java] 배열(Array) (0) | 2023.05.23 |
|---|---|
| [Java] 반복문 - while 문 (0) | 2023.05.18 |
| [Java] 조건문 - switch 문 (0) | 2023.05.04 |
| [Java] 조건문 - if 문 (0) | 2023.05.03 |
| [Java] 형 변환 (0) | 2023.05.01 |