반응형

 

while 문

 

: 조건이 언제 끝날지 모르겠을 때 주로 사용한다.

 

while 문 로직

 

사용법은 아래와 같다.

 

while(조건식) {
	실행문;
}

 

package kr.or.ddit.study04.sec02;

import java.util.Scanner;

public class WhileExample01 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		WhileExample01 obj = new WhileExample01();
		obj.method1();
	}
	
	public void method1() {
		int i = 0;
		while(true) {
			i++;
			System.out.println(i + "번째 실행.");
			System.out.println(i + "종료 하시겠습니까 y/n");
			String yn = sc.nextLine();
			if(yn.equals("y")) { // String 에서는 == 은 안 되기에 equals을 사용하여 비교해야함.
				break; // 입력한 값이 y면 break가 걸려 종료됨.
			}
		}
	}
}

 

결과 화면1

 

 

package kr.or.ddit.study04.sec02;

import java.util.Scanner;

public class WhileExample01 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		WhileExample01 obj = new WhileExample01();
		obj.method2();
	}
    
	public void method2() {
		int i = 0;
		while(i<10) {
			System.out.println(i + "번째 실행");
			i++;
		}
		
		for(;;) { // 위의 while문과 같다.
			
		}
	}
}

 

결과 화면2

 

 

package kr.or.ddit.study04.sec02;

import java.util.Scanner;

public class WhileExample02 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		WhileExample02 obj = new WhileExample02();
		obj.method1();
	}
	
	public void method1() {
		/*
		 * 커피 메뉴
		 * 1. 아메리카노		: 3000원
		 * 2. 카페라떼			: 4500원
		 * 3. 카라멜 마끼아또		: 4700원
		 * 4. 자바칩 프라프치노	: 4900원
		 * 5. 종료
		 * 
		 * while 문을 이용해 해당 메뉴를 출력 하고,
		 * 5를 입력 할 경우 여때까지 주문한 금액의 총합을 출력하시오.
		 */
		
		int sum = 0;
		String str = "커피 메뉴\n"
					+ "1. 아메리카노                 : 3000원\n"
					+ "2. 카페라떼                    : 4500원\n"
					+ "3. 카라멜 마끼아또	 : 4700원\n"
					+ "4. 자바칩 프라프치노       : 4900원\n"
					+ "5. 종료\n";
		String bill = "*** 영수증 ***\n";
		
		while(true) {
			System.out.println(str);
			System.out.println("메뉴를 선택하세요.");
			int menu = sc.nextInt();
			if(menu == 1) {
				sum += 3000;
				bill += "아메리카노                 : 3000원\n";
			} else if(menu == 2) {
				sum += 4500;
				bill += "카페라떼                    : 4500원\n";
			} else if(menu == 3) {
				sum += 4700;
				bill += "카라멜 마끼아또	 : 4700원\n";
			} else if(menu == 4) {
				sum += 4900;
				bill += "자바칩 프라프치노       : 4900원\n";
			} else if(menu == 5) {
				System.out.println("===========================");
				break;
			} else {
				System.out.println("잘못 입력 하셨습니다.");
			}
			System.out.println("===========================");
		}
		System.out.println(bill);
		System.out.println("총 금액은 " +  sum + "입니다.");
	}
}

 

결과 화면3

 

 

 

do-while 문

 

: while 문과 동일하지만 무조건 한 번은 실행한다.

 

do-while 문 로직

 

사용법은 아래와 같다.

 

do {
	실행문;
} while (조건식);

 

package kr.or.ddit.study04.sec02;

import java.util.Scanner;

public class WhileExample02 {
	Scanner sc = new Scanner(System.in);

	public static void main(String[] args) {
		WhileExample02 obj = new WhileExample02();
		obj.method2();
	}
	
	public void method2() {
		
		end : // 라벨을 붙여 사용할 수 있음.
		while(true) {
			System.out.println(" 전체 와일문");
			while(true) {
				System.out.println(" 안쪽 와일문");
//				break;
				break end;
			}
		}
	}
}

 

 

반응형