가끔 기억이 나지 않을 때 참고하려고 정리했습니다.
자바에서는 반복문이 기본적으로 5가지가 있습니다.
4가지라고 생각하실 수 있지만 Lamda 를 이용한 반복문까지 포함했습니다.
자바의 반복문
for 문
반복횟수가 정해져 있을때 사용하면 좋습니다.
초기값, 조건, 증감식을 사용해서 반복을 제어합니다.
public class ForLoopExample {
public static void main(String[] args) {
for (int i = 1; i <= 5; i++) { // i를 1부터 5까지 증가시키면서 반복
System.out.println("i = " + i);
}
}
}
실행 결과
i = 1
i = 2
i = 3
i = 4
i = 5
while 문
반복횟수가 정해지지 않았을 때 사용하면 좋습니다.
조건이 true 일 동안 계속해서 반복합니다.
public class WhileLoopExample {
public static void main(String[] args) {
int i = 1; // 초기값
while (i <= 5) { // 조건
System.out.println("i = " + i);
i++; // 증감식
}
}
}
실행결과
i = 1
i = 2
i = 3
i = 4
i = 5
do-while 문
조건을 나중에 검사하므로 반드시 한번은 실행됩니다.
while 문과 거의 비슷하지만, 반복을 최소 한번은 보장합니다.
public class DoWhileLoopExample {
public static void main(String[] args) {
int i = 1; // 초기값
do {
System.out.println("i = " + i);
i++; // 증감식
} while (i <= 5); // 조건
}
}
forEach 문
배열이나 리스트 같은 자료구조를 쉽게 반복할 때 사용합니다.
for-each 문은 배열이나 컬렉션(ArrayList 등) 을 더 직관적으로 순회할 수 있도록 도와줍니다.
참고로 인덱스를 사용할 필요도 없습니다.
public class ForEachExample {
public static void main(String[] args) {
int[] numbers = {1, 2, 3, 4, 5}; // 배열 선언
for (int num : numbers) { // numbers 배열의 모든 요소를 하나씩 꺼냄
System.out.println("num = " + num);
}
}
}
실행결과
num = 1
num = 2
num = 3
num = 4
num = 5
람다식을 이용한 forEach
람다식을 사용하여 리스트나 배열의 요소를 반복할 수 있습니다.
기존의 for 문이나 for-each 문을 대신해서 더 간결한 코드를 작성할 수 있습니다.
Java 8 부터 사용이 가능합니다.
import java.util.ArrayList;
import java.util.List;
public class LambdaForEachExample {
public static void main(String[] args) {
List<String> names = new ArrayList<>();
names.add("철수");
names.add("영희");
names.add("민수");
// 람다식 forEach 사용
names.forEach(name -> System.out.println("이름: " + name));
}
}
실행결과
이름: 철수
이름: 영희
이름: 민수
만약 배열에서도 람다식을 이용하여 forEach 을 사용하려면 Arrays.stream() 을 사용하시면 됩니다.
import java.util.Arrays;
public class LambdaForEachArray {
public static void main(String[] args) {
String[] fruits = {"사과", "바나나", "딸기"};
// 배열을 스트림으로 변환 후 forEach 사용
Arrays.stream(fruits).forEach(fruit -> System.out.println("과일: " + fruit));
}
}
실행결과
과일: 사과
과일: 바나나
과일: 딸기
'Java' 카테고리의 다른 글
유용한 람다식 함수들 (1) | 2025.02.04 |
---|---|
Java 의 Call by Value, Call by Reference (1) | 2025.01.06 |
간단한 에러 출력 방법과 문제점 (0) | 2025.01.02 |
자바의 람다 표현식 (1) | 2024.12.26 |
Java - Enum (1) | 2024.12.24 |