반복문은 조건을 만족하는 동안 로직을 계속 반복한다. Java에서는 while문과 for문을 반복문으로 제공하고 있다.
for
조건을 만족하는 동안 블럭을 반복한다. 반복횟수를 알 때 사용하기 적합하다. for 문 안에 또 다른 for문을 포함하는 중첩 for문도 가능하다.
- for (초기화; 조건식; 증감식) { 조건식이 true 일 때 수행할 문장 }
조건식이 false가 될 때까지 수행한다.
public class Test {
public static void main(String[] args) {
for (int i = 1; i <= 3; i++) {
System.out.println("안녕하세요");
}
}
} // i가 3이 될 때까지 "안녕하세요" 반복함
향상된 for문
JDK 1.5부터 배열과 컬렉션에 저장된 요소에 접근할 때 기존보다 편리한 방법으로 처리할 수 있도록 for문의 새로운 문법 추가되었다.
- for ( 타입 변수명 : 배열 또는 컬렉션 ) { 반복할 문장 }
public class Ex05 {
public static void main(String[] args) {
int[] a2 = {1,2,3,4,5};
for (int i=0; i<a2.length; i++){
System.out.println(a2[i]); // 1,2,3,4,5
}
for (int i : a2){
System.out.println(i); // 1,2,3,4,5
}
}
}
While
조건을 만족시키는 동안 블럭을 반복한다. 특정조건이 참일 동안 계속해서 반복하는 로직을 만들 때 사용한다. while 문의 경우 조건식의 문장이 참일 동안 반복하는 문장이기 때문에 반드시 거짓이 될 조건을 걸어놔야된다. 조건이 없을 경우 무한반복을 하게 된다.
- while (조건식) { 조건식이 true인동안 반복되는 문장 }
public class Example1 {
public static void main(String[] args) {
int i=11;
System.out.println("카운트다운을 시작합니다.");
while(i--!=0) {
System.out.println(i);
}
System.out.println("Game Over");
}
}
do-while
블럭을 최소한 한 번 이상 반복한다.
- do { 조건식이 true일때 수행될문장, 처음 한번은 무조건 시행 }
while (조건식);
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int input = 0, answer = 0;
answer = (int)(Math.random() * 100) + 1;
Scanner scanner = new Scanner(System.in);
do {
System.out.print("1과 100사이의 정수를 입력하세요>");
input = scanner.nextInt();
if (input > answer) {
System.out.println("더 작은 수로 다시 시도해보세요.");
} else if (input < answer) {
System.out.println("더 큰 수로 다시 시도해보세요.");
}
} while(input!=answer);
System.out.println("정답입니다.");
System.out.println("정답: " + answer);
}
}
// 1~100사이의 정수 중 답 맞추기
// do-while이 아니라 while을 사용했을 경우 "1과 100사이의 정수를 입력하세요>"라는 코드를 한번 더 작성해야 함
'Backend > Java' 카테고리의 다른 글
Java 기초 문법 : 클래스와 객체 그리고 인스턴스 (0) | 2024.05.21 |
---|---|
Java 기초 문법 : 배열의 활용 (0) | 2024.05.19 |
Java 기초 문법 : 배열 (1) | 2024.05.15 |
Java 기초 문법 : break, continue (0) | 2024.05.12 |
Java 기초 문법 : 조건문 (if, switch) (0) | 2024.05.12 |
Java 기초 문법 : 연산자 (0) | 2024.05.10 |
Java 기초 문법 : 콘솔에 데이터 출력해보기 (0) | 2024.05.01 |
JAVA 기초 문법 : 데이터 타입과 변수 (1) | 2024.05.01 |