Java 반복문 및 boolean 활용 정리

My Pale Blue Dot·2025년 3월 4일
0

JAVA

목록 보기
9/35
post-thumbnail

📅 날짜

2025-03-04

📝 학습 내용

1. boolean flag 사용법

  • boolean 변수는 true 또는 false 값을 가지며, 반복문과 조건문을 제어하는 데 사용됨.
  • while 문에서 특정 조건이 만족되면 flagfalse로 설정하여 루프 종료 가능.
  • break와 함께 사용하여 특정 조건에서 빠져나오는 방법.
  • 메서드에서 boolean 값을 반환하여 조건 검사용으로 활용.

✅ 예제 코드

public class BooleanExample {
    public static void main(String[] args) {
        boolean isRunning = true;

        while (isRunning) {
            System.out.println("프로그램 실행 중...");
            isRunning = false; // 조건을 만족하면 반복문 종료
        }
    }
}

2. break, continue, label break 활용

🔹 break 사용 예제

  • -1을 입력하면 루프가 종료됨.
Scanner sc = new Scanner(System.in);
int sum = 0;
while (true) {
    int n = sc.nextInt();
    if (n == -1) break;  // -1 입력 시 반복문 종료
    sum += n;
}
System.out.println("SUM: " + sum);
sc.close();

🔹 boolean flag로 중첩 루프 탈출

  • 7x7 = 49 출력 후 모든 반복문 종료.
boolean flag = false;
for (int dan = 2; dan < 10; dan++) {
    for (int i = 1; i < 10; i++) {
        System.out.printf("%d x %d = %d\n", dan, i, dan * i);
        if (dan == 7 && i == 7) {
            flag = true;
            break;
        }
    }
    if (flag) break;
}

🔹 label break 사용 예제

  • Exit: 라벨을 사용하여 바깥 루프까지 탈출.
Exit:
for (int dan = 2; dan < 10; dan++) {
    for (int i = 1; i < 10; i++) {
        System.out.printf("%d x %d = %d\n", dan, i, dan * i);
        if (dan == 7 && i == 7) break Exit;
    }
}

🔹 continue 사용 예제 (3의 배수 제외)

  • continue를 사용하여 3의 배수를 건너뛰고 합을 구함.
int sum = 0;
for (int i = 1; i <= 10; i++) {
    if (i % 3 == 0) continue;
    sum += i;
}
System.out.println("SUM: " + sum);

3. List<String> 컬렉션 반복 처리

🔹 for문을 사용한 리스트 순회

List<String> lists = new ArrayList<>();
lists.add("JAVA");
lists.add("JSP/SERVLET");
lists.add("SPRING STS");
lists.add("SPRINGBOOT");
lists.add("REACT");
lists.add("ORACLE");

for (int i = 0; i < lists.size(); i++) {
    System.out.println(lists.get(i));
}

🔹 향상된 for문 사용

for (String subject : lists) {
    System.out.println(subject);
}

🔹 Stream API 활용 (forEach)

lists.stream().forEach(item -> System.out.println(item));

🔗 참고 자료

💡 느낀 점

  • boolean flag를 활용하면 중첩 루프를 더 쉽게 제어할 수 있음을 배웠다.
  • breakcontinue의 차이를 명확하게 이해할 수 있었다.
  • Stream API를 활용하면 코드를 더 간결하고 함수형 스타일로 작성할 수 있다.
  • label break를 사용하면 다중 루프를 빠르게 탈출할 수 있지만, 가독성이 떨어질 수도 있다.

📌 요약

  • boolean flag → 특정 조건에서 반복문 종료
  • break → 현재 루프 탈출
  • label break → 바깥 루프까지 탈출
  • continue → 현재 반복을 건너뛰고 다음 루프로 진행
  • for, 향상된 for, Stream API를 활용하여 리스트 순회

profile
Here, My Pale Blue.🌏

0개의 댓글