- 사용자가 구입 금액을 입력한다.
- 사용자가 수동으로 구매할 로또 갯수를 입력한다.
- 사용자가 수동으로 구매할 로또 번호를 입력한다.
- 수동과 자동으로 생성된 로또 번호를 출력한다.
- 사용자가 지난 주 로또 당첨번호를 입력한다.
- 사용자가 지난 주 로또 보너스볼 번호를 입력한다.
- 당첨 통계를 출력한다.
- 구매 금액 입력하기 (InputView)
- 1100 -> Ok
- 1000 -> Ok
- 900 -> 입력 메소드 호출
- 구매금액으로 살 수 있는 로또 갯수 산출하기(InputView)
- 수동으로 구매할 로또 수 입력하기(InputView)
- 구매금액으로 살 수 있는 갯수보다 많게 입력 -> 입력 메소드 다시 호출
- 한 장의 Lotto 생성
- 당첨 번호 생성
- 정상적인 당첨번호 입력
- 유효하지 않은 당첨번호
- 한 장의 Lotto에 대한 당첨 결과 구하기
- n 장의 Lotto에 대한 당첨 결과 구하기
- Lotto 결과에 따른 수익률 구하기
-
어플리케이션 흐름
- 사용자가 문자열을 입력한다.
- 입력값에 대한 Null&Empty 검증을 진행한다.
- 문자열을 구분자를 기준으로 분리한다.
- 문자열을 숫자로 변환한다.
- 숫자를 더한다.
-
기능 구현
-
입력받은 문자열을 출력하는 기능
-
입력값을 검증하는 기능
- 예외처리_입력값이 null이면 0을 반환한다.
- 예외처리_입력값이 Empty이면 0을 반환한다.
-
입력받은 문자열을 인자로 주면, 구분자로 구분된 문자열의 배열(또는 콜렉션)를 반환하는 기능
-
구분자로 구분된 문자열의 배열(또는 콜렉션)을 인자로 주면, 숫자로 반환하는 기능
- 기능_문자열 배열(또는콜렉션)을 숫자로 변환한다.
- 예외처리_입력값이 숫자가 아니면 예외를 던진다.
- 예외처리_입력값이 음수면 예외를 던진다.
-
숫자로 변환된 배열(또는 콜렉션)을 인자로 주면, 더하기 연산의 결과값을 반환하는 기능
-