Я новичок в кодировании и следую учебному пособию на YouTube по созданию простого банковского приложения.
Я получаю сообщение об ошибке: Синтаксическая ошибка на токене ";", {ожидается
Я обрисовал в общих чертах, где находится ошибка, в моем коде ниже.
Вещи, которые я пробовал:
- Я посмотрел на фигурные скобки, и они выглядят хорошо для меня.
- Я посмотрел на другие подобные вопросы здесь, и они, кажется, не помогают.
- Google и до сих пор не может понять, что является причиной этой расстраивающей ошибки.
- Google говорит мне, что это может быть связано с скобками, но я не вижу проблемы?
Код ниже:
import java.util.Scanner;
public class BankingApplication {
public static void main(String[] args) {
// TODO Auto-generated method stub
BankAccount obj1 = new BankAccount("Daniel", "BAB001");
obj1.showMenu();
}
}
class BankAccount {
int balance;
int previousTransaction;
String customerName;
String customerId;
BankAccount(String cname, String cid) {
customerName = cname;
customerId = cid;
}
void deposit(int amount) {
if (amount >= 0) {
balance = balance + amount;
previousTransaction = amount;
}
}
void withdraw(int amount) {
if (amount != 0) {
balance = balance - amount;
previousTransaction = amount;
}
}
void getPreviousTransaction() {
if (previousTransaction > 0) {
System.out.println("Deposited: " + previousTransaction);
} else if (previousTransaction < 0) {
System.out.println("Withdrawn: " + Math.abs(previousTransaction));
} else {
System.out.println("No transaction occured");
}
}
void showMenu() {
char option= '\0';
Scanner scanner = new Scanner(System.in);
System.out.println("Welcome "+customerName);
System.out.println("Your ID: "+customerId);
System.out.println("\n");
System.out.println("A. Check Balance");
System.out.println("B. Deposit");
System.out.println("C. Withdraw");
System.out.println("D. Previous Transaction");
System.out.println("E. Exit");
do {
System.out.println("======================================================");
System.out.println("Enter an option");
System.out.println("======================================================");
option = scanner.next().charAt(0);
System.out.println("\n");
{
//error is on line directly under this one
switch(option)
case 'A':
System.out.println("======================================================");
System.out.println("Balance = "+balance);
System.out.println("======================================================");
System.out.println("\n");
break;
case 'B':
System.out.println("======================================================");
System.out.println("Enter an amount to deposit: ");
System.out.println("======================================================");
int amount = scanner.nextInt();
deposit(amount);
System.out.println("\n");
break;
case 'C':
System.out.println("======================================================");
System.out.println("Enter an amount to withdraw: ");
System.out.println("======================================================");
int amount2 = scanner.nextInt();
withdraw(amount2);
System.out.println("\n");
break;
case 'D':
System.out.println("======================================================");
getPreviousTransaction();
System.out.println("======================================================");
int amount3 = scanner.nextInt();
deposit(amount3);
System.out.println("\n");
break;
case 'E':
System.out.println("*****************************************************");
break;
default:
System.out.println("Invalid option: Please try again");
break;
}
}
while(option != 'E') ;
System.out.println("Thank you for using our services");
}
}