본문 바로가기

PROJECT/커피숍

[토이/자바/JDBC] 커피숍 키오스크 만들기(12) : 입력 모듈

 

메인 클래스를 만들던 도중 매번 Scanner로 입력을 받다보니 예외처리가 너무 많아지고 여러번 코드를 작성해야하는 불편함이 컸다. 그 때문에 Scanner 대신 사용할 입력 메서드를 두개 만들어 모듈처럼 사용하였다.

 

하나는 숫자만 입력받는 메서드고 다른 하나는 문자만 입력받는 메서드이다. 메서드 내부에서 예외처리를 해둔 터라 여러번 예외처리를 할 필요가 없어서 아주 편리했다.

 

package coffee.pj.comm;

import java.util.Scanner;

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

	public int scInt() {
		int num = 0;
		boolean sccan = false;
		while (!sccan) {
			try {
				num = sc.nextInt();
				sccan = true;
			} catch (java.util.InputMismatchException e) {
				System.out.println("숫자만 입력해주세요");
				sc.nextLine();
				System.out.print("입력 : ");
			}
		}
		return num;
	}

	public String scString() {
		String str = "";
		boolean sccan = false;
		while (!sccan) {
			try {
				str = sc.next();
				sccan = true;
			} catch (Exception e) {
				System.out.println("문자만 입력해주세요");
				sc.nextLine();
				System.out.print("입력 : ");
			}
		}
		return str;
	}

	void scOff() {
		if (sc != null) {
			sc.close();
			sc = null;
		}
	}
}