2016-02-15 3 views
0

У меня есть задача сделать, что включает в себя попросить пользователя ввести свою фамилию и дать пользователю номер учетной записи для входа в программу. Я привел перечисленные ниже шаги, которые могут иметь больше смысла.Java - Сохранение строк для входа в систему

1) Пользователь создает учетную запись

2) Пользователь вводит свою фамилию

3) Пользователю предоставляется номер счета

4) Пользователь может затем Войти с помощью их фамилию и номер счета

Пользователь вводит свою фамилию и им присваивается номер учетной записи, который затем используется для входа в систему для внесения депозита, снятия и проверки баланса.

Как создать программу для этого без использования базы данных?

класса Account

private static int number = 500; 

Account(){ 

    accountNumber = number++; 
} 

Создать аккаунт класса

public void createAccount(){ 

    String firstName; 

    System.out.print("Please Enter Last Name: "); 
    lastName = scanner.nextLine(); 
    System.out.println("This is your Account Number to log into: " + _______); 
} 

public void logIn(){ 

    System.out.println("Please enter your last name: "); 

    System.out.println("Please enter your account number: "); 

} 
+0

@MaximilianGerhardt Пользователь вводит свою фамилию и им присваивается номер учетной записи, который они затем используют для входа в систему, чтобы внести, снять и проверить остаток – AnotherUser

ответ

0

Начать с учетной записью. Он должен быть создан только с именем (lastname) и иметь некоторые поля для номера счета и баланса.

Quickstart:

public class Account 
{ 
    private static int number = 500; 

    private int accountNumber; 
    private int balance = 0; //(in cents or a float if this is in full dollars) 
    private String name; 

    public Account(String name){ 
     accountNumber = number++; 
     this.name = name; 
    } 

    public String getName(){ 
     return this.name; 
    } 

    public int getBalance(){ 
     return this.balance; 
    } 

    public boolean withdrawMoney(int amount){ 
     if(this.balance < amount) 
      return false; 
     this.balance -= amount; 
     return true; 
    } 

    public int getAccountNumber(){ 
     return this.accountNumber; 
    } 
} 

Тогда для каждого введенного имени создать учетную запись для этого пользователя, а затем делать все, что вы хотите с ним.

public void createAccount(){ 

    System.out.print("Please Enter Last Name: "); 
    String lastName = scanner.nextLine(); 

    /* Create an account */ 
    Account account = new Account(lastName); 

    /* TODO: Save all accounts into a ArrayList<Account> to keep track of them */ 

    System.out.println("This is your Account Number to log into: " + account.getAccountNumber()); 
} 

public void logIn(){ 

    System.out.println("Please enter your last name: "); 
    String lastName = scanner.nextLine(); 

    System.out.println("Please enter your account number: "); 
    String accountNumber = scanner.nextLine(); 

    /* TODO: Convert accountNumber to an int */ 

    /* TODO: Check if an account exists in that list of saved accounts which has 
     that lastName and that account number 
    */ 

    /* TODO: Add interaction with the bank account */ 
} 

Вы должны выяснить, остальное для себя. Для «базы данных» учетных записей вы можете просто использовать static ArrayList<Account> allAccounts, который объявляется и инициализируется где-то в классе пользовательского интерфейса. Или вы можете разгрузить это отдельному классу «Контейнер», который сделает это за вас.

+0

/* TODO: проверить, существует ли учетная запись в этом списке сохраненных учетных записей, lastName и номер этой учетной записи .... Как бы я это сделал, вы могли бы мне помочь? – AnotherUser

+0

Если у вас есть 'ArrayList allAccounts' всех учетных записей, вы можете просто перебрать их в' for (Account acc: allCounts) 'и проверить, есть ли' acc.getName(). Equals (lastName) 'и при этом time 'acc.getAccountNumber() == _accountNumber' (где' _accountNumber' имеет тип 'int') –

+0

Извините, я java noob. Я не понимаю, что вы имеете в виду. Не могли бы вы его закодировать? Это для школьной задачи. – AnotherUser

Смежные вопросы