Банкомат на JavaJAVA

Программисты JAVA общаются здесь
Anonymous
Банкомат на Java

Сообщение Anonymous »

Я пытался выяснить, что идет не так с этой программой, которую я пишу. Вот полное описание того, что я пытаюсь сделать:
Используйте класс учетной записи, созданный в программировании 9.7, чтобы имитировать банкомат. Создайте десять учетных записей в массиве с идентификатором 0, 1 ,. Полем Полем , 9, и начальный баланс $ 100. Система побуждает пользователя ввести идентификатор. Если идентификатор введен неправильно, попросите пользователя ввести правильный идентификатор. Как только идентификатор принимается, главное меню отображается, как показано в пробеге образца. Вы можете ввести выбор 1 для просмотра текущего баланса, 2 для снятия денег, 3 для внесения денег и 4 для выхода из основного меню. После того, как вы выйдете, система снова запрашивает удостоверение личности. Таким образом, как только система начнется, она не остановится. Я понял, что проблема в том, что мои учетные записи воссоздаются каждый раз после транзакции. Мой вопрос в основном я могу сделать или где я могу переписать создание аккаунта, поэтому я избегаю этой проблемы. Я новичок в программировании, поэтому я все еще борюсь. < /P>
import java.util.Date;
import java.util.Scanner;

public class test {

public static void main(String[] args) {
mainMenuOptions();
}

//main menu option method
public static void mainMenuOptions(){
Scanner input = new Scanner(System.in);
//enter id
System.out.println("Enter an id: ");
int id = input.nextInt();
//create accounts
Account [] accounts = new Account[10];
//initialize 100 dollars
for (int i = 0; i < accounts.length; i++) {
accounts = new Account(i, 100);
}
int index = -1;
for(int i = 0; i < accounts.length; i++) {
if(accounts.getid() == id) {
index = i;
i = accounts.length;
}
}
if(id
Редактировать: Когда я перехожу, чтобы проверить баланс, он повторно переоценит меня к сканерам для идентификатора и выбора. Я не уверен, в чем проблема, может кто -нибудь попытаться запустить мой код или дать мне некоторое представление о том, в чем может быть проблема. Спасибо. Предполагается, что программа сможет пройти любой выбор транзакций, моделируя банкомат, идентификатор-это число от 0 до 9. Вот новый обновленный код. < /P>
import java.util.Date;
import java.util.Scanner;

public class test {

private static Account[] accounts = new Account[10];

public static void main(String[] args) {
accounts();
mainMenuOptions();
}

//main menu option method
public static void mainMenuOptions() {
Scanner input = new Scanner(System.in);

int enterchoice = -1;
int id=-1;
while (enterchoice != 4) {
mainMenu();
System.out.println("Enter an id: ");
id = input.nextInt();
//enter id
System.out.println("Enter choice: ");
enterchoice = input.nextInt();

int index = -1;
for (int i = 0; i < accounts.length; i++) {
if (accounts.getid() == id) {
index = i;
break;
}
}

if (enterchoice == 1) {
System.out.println("The balance is " + accounts[index].getbalance());
} else if (enterchoice == 2) {
System.out.println("Enter an amount to withdraw ");
double amount = input.nextDouble();
//withdraw method
accounts[index].withdraw(amount);
} else if (enterchoice == 3) {
System.out.println("Enter an amount to deposit ");
double amount = input.nextDouble();
//deposit method
accounts[index].deposit(amount);
}
}
}

public static void accounts() {
//create accounts
//initialize 100 dollars
for (int i = 0; i < accounts.length; i++) {
accounts = new Account(i, 100);
}
}

//main menu method
public static void mainMenu(){
System.out.println("Main menu"+"\n1:check balance"+"\n2:withdraw" +"\n3:deposit"+"\n4:exit");
}
}

class Account{
private int id = 0;
private double balance = 0;
private double withdraw = 0;
private double deposit = 0;
private double amount = 0;

Account(){
}

Account(int id, double balance){
this.id = id;
this.balance = balance;
}

public int getid(){
return this.id;
}
public void setid(int newid){
id = newid;
}
public double getbalance(){
return this.balance;
}
public void withdraw(double amount){
balance = balance - amount;
}

public void deposit(double amount){
balance = balance + amount;
}
}


Подробнее здесь: https://stackoverflow.com/questions/355 ... ne-in-java

Вернуться в «JAVA»