0

当我尝试调用方法时,这一直给我错误,addAccount说 .class 应该在我尝试调用它的行上。
我正在尝试做一个分配,我应该创建一个addAccount接受两个参数的方法;accountName并将accountBalance参数放入accountArray

import java.util.*;
public class bank
{
    public static void main(String[]args)
    {
        Scanner sc = new Scanner(System.in);
        int choice = 0;
        int accountNo = 0;
        double accountBal = 0;
        int[] accountNoArray = new int[20];
        int[] accountBalArray = new int[20];
        displayMenu();
        System.out.print("Please Enter Your Choice: ");
        choice = sc.nextInt();
        if(choice == 1)
        {
        System.out.print("Please Enter NRIC number: ");
        accountNo = sc.nextInt();
        System.out.print("Please Enter Account Balance: ");
        accountBal = sc.nextInt();
        }
        public static void displayMenu()
        {
        System.out.println("Menu");
        System.out.println("1. Add an account");
        System.out.println("2.Search an account with the given account number");
        System.out.println("3.Display accounts below the given balance");
        System.out.println("4.Exit");
        }
        public static void addAccount(int accountNo,double accountBal)
        {

        }
}
4

3 回答 3

3

您在 displayMenu 方法的定义之前缺少一个右大括号。以下版本在语法上是正确的:

public class Bank {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int choice = 0;
        int accountNo = 0;
        double accountBal = 0;
        int[] accountNoArray = new int[20];
        int[] accountBalArray = new int[20];
        displayMenu();
        System.out.print("Please Enter Your Choice: ");
        choice = sc.nextInt();
        if (choice == 1) {
            System.out.print("Please Enter NRIC number: ");
            accountNo = sc.nextInt();
            System.out.print("Please Enter Account Balance: ");
            accountBal = sc.nextInt();
        }
    }

    public static void displayMenu() {
        System.out.println("Menu");
        System.out.println("1. Add an account");
        System.out.println("2.Search an account with the given account number");
        System.out.println("3.Display accounts below the given balance");
        System.out.println("4.Exit");
    }

    public static void addAccount(int accountNo, double accountBal) {

    }
}
于 2012-08-18T06:21:13.260 回答
0

调用方法时不要指定参数类型。

这是一个错误:

case 1 : addAccount(int accountNo,double accountBal);

肯定是:

case 1 : addAccount(accountNo,accountBal); break;
于 2012-08-18T07:41:25.533 回答
0

您已将其声明为静态,因此您需要在调用之前添加类名

bank.addAccount(int accountNo,double accountBal);

而不是类型声明,您必须使用参数调用它。

bank.addAccount(accountNo,accountBal);
于 2012-08-18T07:42:34.613 回答