provided 3. Supplier
@FunctionalInterface
public interface Supplier<T> {
T get();
}private PurchaseMoney initPurchaseMoney() {
PurchaseMoney purchaseMoney;
while (true) {
try {
int inputMoney = inputView.inputPurchaseMoneyOfLotto();
purchaseMoney = new PurchaseMoney(inputMoney);
break;
} catch (IllegalArgumentException ex) {
outputView.outputErrorMessage(ex);
}
}
return purchaseMoney;
}
private WinningLotto initWinningNumbers() {
WinningLotto winningLotto;
while (true) {
try {
List<Integer> input = inputView.inputWinningNumbers();
Lotto lotto = new Lotto(input);
winningLotto = new WinningLotto(new Lotto(input));
break;
} catch (IllegalArgumentException ex) {
outputView.outputErrorMessage(ex);
}
}
System.out.println();
return winningLotto;
}
private Bonus initBonusNumber(WinningLotto winningLotto) {
Bonus bonus;
while (true) {
try {
bonus = new Bonus(new Number(inputView.inputBonusNumber()), winningLotto);
break;
} catch (IllegalArgumentException ex) {
outputView.outputErrorMessage(ex);
}
}
return bonus;
}
// νΈμΆ
int inputMoney = inputView.inputPurchaseMoneyOfLotto();
PurchaseMoney purchaseMoney = initPurchaseMoney();
PersonLotto personLotto = initPersonLotto(generate, purchaseMoney);
WinningLotto winningLotto = initWinningNumbers();
int inputBonusNumber = inputView.inputBonusNumber();
Bonus bonus = initData(() -> new Bonus(new Number(inputBonusNumber), winningLotto));Last updated