编程新手。构建简单的银行应用程序 - 令牌“;”上的语法错误,{ 预期。 - Eclipse 错误(包含代码)
New to programming. Building simple Banking Application - Syntax error on token ";", { expected. - Error in Eclipse (code included)
我是编码新手,正在按照 YouTube 上的教程创建简单的银行应用程序。
I'm getting an error: Syntax error on token ";", { expected
我在下面的代码中概述了错误所在。
我尝试过的事情:
- 我看过牙套,它们对我来说很好。
- 我已经查看了此处的其他类似问题,但它们似乎没有帮助。
- Google'd 但仍然无法弄清楚是什么导致了这个令人沮丧的错误。
- 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= '[=11=]';
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");
}
}
您需要将 switch 语句封装在方括号中(就像您对方法所做的那样):
switch(option) {
...
default:
System.out.println("Invalid option: Please try again");
break;
}
我是编码新手,正在按照 YouTube 上的教程创建简单的银行应用程序。
I'm getting an error: Syntax error on token ";", { expected
我在下面的代码中概述了错误所在。
我尝试过的事情:
- 我看过牙套,它们对我来说很好。
- 我已经查看了此处的其他类似问题,但它们似乎没有帮助。
- Google'd 但仍然无法弄清楚是什么导致了这个令人沮丧的错误。
- 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= '[=11=]';
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");
}
}
您需要将 switch 语句封装在方括号中(就像您对方法所做的那样):
switch(option) {
...
default:
System.out.println("Invalid option: Please try again");
break;
}