- 반복은 컴퓨터가 가장 잘하는 작업입니다.
System.out.println("a");
System.out.println("a");
System.out.println("a");
System.out.println("a");
System.out.println("a");
- 이런 식의 코드를 쓴다고 보도록 하겠습니다.
- 물론 복붙이나 단축키를 통해서 5번 정도는 붙일 수 있습니다.
- 하지만 이 작업을 100번 1000번 해야 한다고 하면 너무 힘들겠죠?
- 그래서 반복적인 작업을 하는 구문이 따로 있습니다.
- 이번 강좌에서는 while문과 do while문을 배워 보도록 하겠습니다.
1. while문
- while은 ~ 동안이라는 뜻을 갖고 있습니다.
- 조건식이 맞는 동안 코드 블록 { } 내부의 코드를 반복하라는 구문입니다.
1) while 구문 문법
## 문법
while(조건식){
반복할 코드;
}
- 기본 if문처럼 매우 간단합니다.
- 조건식이 맞으면 반복할 코드를 계속 실행합니다.
- 조건식이 맞지 않으면 while문을 벗어납니다.
- 이때 조건식에 true를 쓰면 무한 루프에 빠질 수 있으므로 주의해서 사용해야 합니다.
2) while 구문 예제
- 그럼 간단하게 1부터 10까지 출력하는 예제로 반복을 해보겠습니다.
- 아래에서는 직접 실습으로 확인해 보겠습니다.
- 패키지(ch12_repeat)과 클래스(Ex01_While.java)를 추가해 주세요.
- 기초적 작업을 모르는 분은 아래 주소를 클릭하고 보고 오세요.
https://ossam5.tistory.com/613
## while문 실습1 - Ex01_While.java
package ch12_repeat;
public class Ex01_While {
public static void main(String[] args) {
int num = 1; //출력할 숫자를 담는 변수 - 처음값이 1을 담기
while(num <= 10) { //num이 10보다 작거나 같으면
System.out.println(num); //num출력
num++; //그 다음 숫자를 받기 위해 1증가
}
}
}
- 코드에 주석을 달았으므로 확인해 보시길 바랍니다.
- 조건이 10보다 작거나 같을 때인데, num값이 11이 되면 while문을 벗어나 반복을 종료합니다.
## while문 결과1 - Ex01_While.java
- 1~10까지 잘 출력되는 것을 확인할 수 있습니다.
- 반복을 엄청 잘하죠?
2. do while문
- do while문은 코드를 먼저 실행하고 조건이 맞으면 계속 실행하는 구문입니다.
- 조건식이 맞는 동안 코드 블록 { } 내부의 코드를 반복하라는 구문입니다.
1) do while 구문 문법
## 문법
do{
반복할 코드;
}while(조건식);
- 조건식이 맞으면 반복할 코드를 계속 실행합니다.
- 조건식이 맞지 않으면 while문을 벗어납니다.
- 이때 조건식에 true를 쓰면 무한 루프에 빠질 수 있으므로 주의해서 사용해야 합니다.
2) do while 구문 예제
- 그럼 간단하게 1부터 10까지 출력하는 예제로 반복을 해보겠습니다.
## dowhile문 실습1 - Ex02_DoWhile.java
package ch12_repeat;
public class Ex02_DoWhile {
public static void main(String[] args) {
int num = 1; //출력할 숫자를 담는 변수 - 처음값이 1을 담기
do {
System.out.println(num); //num출력
num++; //그 다음 숫자를 받기 위해 1증가
}while(num <= 10);
}
}
- 설명은 코드에 주석으로 달아놨으니 확인 바랍니다.
## dowhile문 결과1 - Ex02_DoWhile.java
- 1~10까지 잘 출력되는 것을 확인할 수 있습니다.
- 반복을 엄청 잘하죠?
- 근데 while문과 do while문의 결과가 같은데 왜 따로 있는지 궁금하죠?
- 아래에서 그 이유를 보겠습니다.
3) while과 do while 비교
- while문은 조건식이 맞지 않으면 한 번도 실행하지 않습니다.
- do while문은 조건식이 맞지 않아도 한 번은! 실행합니다.
- 이건 중요한 차이입니다.
- 코드를 보면서 바로 비교를 해보겠습니다.
## while과 do while 비교 실습1 - Ex03_ComparativeWhile.java
package ch12_repeat;
public class Ex03_ComparativeWhile {
public static void main(String[] args) {
int num1 = 10; //while문이 사용할 변수
int num2 = 10; //do while문이 사용할 변수
while(num1 > 20) { //num1이 10보다 크다면 (틀림)
System.out.println("while문이 실행");
}
do {
System.out.println("do while문이 실행");
}while(num2 > 20); //num2가 10보다 크다면 (틀림)
}
}
- 두 반복문 모두 조건이 다르게 처리를 했습니다.
## while과 do while 비교 실습2 - Ex03_ComparativeWhile.java
- 그럼 while문 실행되지 않는데, do while문은 실행되죠?
- do while문은 조건이 맞지 않아도, 한 번은 실행합니다.
- 추후에 꽤 쏠쏠하게 사용할 수 있습니다.
'컴퓨터언어 > JAVA(자바)' 카테고리의 다른 글
[JAVA강좌] 19강 반복문관련 - break와 continue (0) | 2024.01.15 |
---|---|
[JAVA강좌] 18강 반복문 - for문 (0) | 2024.01.11 |
[JAVA강좌] 16강 조건문 - switch문 (0) | 2024.01.11 |
[JAVA강좌] 15강 조건문 if문 (0) | 2024.01.11 |
[JAVA강좌] 14강 비트연산자와 연산자우선순위 (0) | 2024.01.11 |