В общем, сильно не взлюбил Яву, как язык программирования, грубо говоря, слабо в нём разбираюсь.
Есть код, который я сам переделал под себя, но не могу закончить как я хочу.
Сделал такой выбор в программе, что если у пользователя не хватает баланса на счету, ему предлагается пополнить этот баланс. Не сложней задачей я сделал так, что пользователь может обнулить свой счёт на своё заданное число, но не пополнить его. Как-же мне сделать так, чтоб он мог не сбрасывать свой счёт, а только пополнить конкретную сумму?
double residual;
residual = customer.getBalance() - product.getPrice();
if (residual < 0){
System.out.println("----------------------------------");
System.out.println("Недостаточно средств для покупки");
System.out.println("----------------------------------");
System.out.println("Баланс: "+customer.getBalance()+"€");
System.out.println("----------------------------------");
System.out.println("Хотите пополнить свой баланс?");
System.out.println("1. Пополнить баланс");
System.out.println("2. Не пополнять баланс");
String var = scan.nextLine();
switch (var) {
case "1":
System.out.println("--- ПОПОЛНИТЬ БАЛАНС ---");
double numBalance;
do {
System.out.printf("Введите новый баланс счета: ");
String strBalance = scan.nextLine();
try {
numBalance = Double.parseDouble(strBalance);
System.out.println("Вы успешно обнулили свой счёт на "+strBalance+"€");
break;
} catch (Exception e) {
System.out.println("Нужно использовать только цифры.");
}
} while (true);
customer.setBalance(numBalance);
System.out.println("Попробуйте заново купить товар.");
break;
case "2":
System.out.println(" --- НЕ ПОПОЛНЯТЬ БАЛАНС --- ");
break;
}
return;
}else{
customer.setBalance(residual);
Purchase purchase = new Purchase(customer, product, calendar.getTime());
this.addPurchaseToArray(purchase, listPurchases);
}