본문 바로가기

Java

반복문 while

반복문 while

 

for문과의 차이점

 

반복 횟수가 명확하지 않을때 유용하다.

 

while (조건식) {

}

 

while문은 무한루프를 조심해야 한다. 

 

while의 조건문에 true를 삽입하면 무한히 반복하는 구문이 만들어진다.

package ch04;
public class WhileTest1 {
    // entry
    public static void main(String[] args) {

        int i = 1;
        // 괄호 안에 조건식(true, false)
        while (i <= 3) {
            System.out.print(i + " ");
            // while문을 작성할때 무한루프를 조심하자.
            // 조건식에 처리가 없다면 무한히 반복한다.
            i += 1;
        }
        System.out.println();
        System.out.println("while 종료 후 i 값: " + i);

    } // end of main
}

 

Scanner 메서드를 사용해서

while문을 어디까지 반복할지 직접 정해볼 수 있다.

package ch04;
import java.util.Scanner;
public class WhileTest2 {

    // entry
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        System.out.println("종료하고 싶은 정수값을 입력하시오");
        // 1~10 합은 55
        // 이를 while 구문으로 만들어보라

        int i = 1;
        int sum = 0;
        final int END = scanner.nextInt();
        while ( i <= END) {
            sum += i;
            System.out.print(sum + " ");
            i++; // 조건식에 대한 처리 확인 중요
        }
        System.out.println();
        System.out.println("1~" + END + "의 합은: " + sum);

    } // end of main
}

 

while을 사용해 좀 더 복잡한 프로그램을 해보자

package exercise;
import java.util.Scanner;
public class Exercise8 {
    // 코드의 진입점
    public static void main(String[] args) {
        /*
        프로그램밍에는 C R U D 라는 개념이 있다.

        C Create  생성
        R Read    조회
        U Update  수정
        D Delete  삭제

        실행의 흐름을 만들어보는 연습

        여러 옵션 중 하나를 선택   1.등록 2.조회 3.수정 4.삭제 0.종료
        이에 따른 적절한 메시지    "등록을 선택했습니다"
        종료를 선택할때까지 반복   "프로그램 종료"
         */

        Scanner sc = new Scanner(System.in);
        int choice; // 도구를 준비하고 값을 활용하기 우해 변수가 필요하다.

        while (true) {

            System.out.print("원하시는 메뉴 숫자를 입력해주세요 1.등록 2.조회 3.수정 4.삭제 0.종료 ");
            choice = sc.nextInt();

            // 1 2 3 4 0 실행의 흐름을 만들어야 한다.
            if (choice == 1) {
                System.out.println(choice + ". 등록을 선택했습니다");
            } else if (choice == 2) {
                System.out.println(choice + ". 조회를 선택했습니다");
            } else if (choice == 3) {
                System.out.println(choice + ". 수정을 선택했습니다");
            } else if (choice == 4) {
                System.out.println(choice + ". 삭제를 선택했습니다");
            } else if (choice == 0) {
                System.out.print("...프로그램 종료");
                break;

            } else {
                System.out.println(choice + "번은 없는 번호이니 다시 선택해 주기 바랍니다.");
            }
            System.out.println("= = = = = = = = = = = = = = = = = = = = ");
            System.out.println();
        } // end of while

    }//end of main
}

 

'Java' 카테고리의 다른 글

인텔리제이 IntelliJ 편리한 단축키 정리 (계속)  (0) 2025.04.15
객체 이해  (2) 2025.04.14
반복문 for  (0) 2025.04.14
자료의 형 변환 - 강제형변환  (0) 2025.04.10
연산자 (= + - * / %) 의 종류와 활용  (0) 2025.04.10