Computer Science/Java
자바 | 반복문 (While, Do-While, For, For-Each)
올리브한입
2025. 3. 24. 14:11
반응형
프로그래밍을 할 때, 특정 작업을 여러 번 반복해야 할 경우가 많습니다. 이런 상황에서 반복문(루프)은 매우 중요한 역할을 합니다.
While문
while 루프는 반복 조건이 명확할 때 사용됩니다. 반복 조건이 참인 동안 계속해서 반복하며, 조건을 먼저 검사한 후 반복 여부를 결정합니다.
int[] data = {1, 3, 5, 7, 9};
int target = 5;
int j = 0;
while ((j < data.length) && (data[j] != target)) {
j++;
}
if (j < data.length) {
System.out.println("Target found at index: " + j);
} else {
System.out.println("Target not found");
}
이 코드에서는 data 배열에서 target인 5를 찾습니다. while 루프는 j가 0부터 시작해서 5와 일치하는 값을 찾을 때까지 배열을 순차적으로 확인합니다. 5가 발견되면, 해당 인덱스를 출력합니다.
Do-While문
do-while 루프는 최소한 한 번은 실행되어야 할 때 유용합니다. 반복 조건을 검사하기 전에 코드가 실행되므로, 조건이 처음에 false라도 한 번은 실행됩니다.
int j = 11;
do {
System.out.println("j의 값은: " + j);
j++; // j 값을 증가시킴
} while (j < 10);
이 경우 11만 출력하고 루프는 종료됩니다.
For문
for 루프는 반복 횟수가 명확할 때 사용합니다.
int[] data = {1, 2, 3, 4, 5}; // 예시 배열
int total = 0; // 합계를 저장할 변수
for (int ind = 0; ind < data.length; ind++) {
total += data[ind];
System.out.println(total);
}
System.out.println("배열의 합: " + total); // 합을 출력
반복문을 통해 배열의 모든 요소를 순차적으로 더해주는 방식입니다.
For-Each문
배열이나 컬렉션(예: 리스트, 세트 등)을 순회할 때 사용되는 간결한 반복문입니다. for 문에서 인덱스를 사용할 필요 없이, 배열이나 컬렉션의 각 요소를 하나씩 접근하여 반복할 수 있습니다.
public class ForEachSumExample {
public static void main(String[] args) {
double[] data = {1.5, 2.5, 3.5, 4.5, 5.5}; // 예시 배열
double total = 0; // 합계를 저장할 변수
for (double val : data) {
total += val; // 배열의 각 값을 total에 더함
}
System.out.println("배열의 합: " + total); // 합을 출력
}
}
이 코드는 배열 data의 각 double 값을 모두 더해서 그 합을 total에 저장하고 반환하는 방식입니다. for-each 문을 사용하면 배열을 쉽게 순회할 수 있어 코드가 간결하고 효율적입니다.
반응형