gpt4 book ai didi

java - 取款和存款后如何更新余额(取款,存款,余额查询)java

转载 作者:行者123 更新时间:2023-12-02 04:07:31 25 4
gpt4 key购买 nike

我有一个java作业。我的任务是建立一个可以取款、存款和查询余额的银行。我的问题是,我无法在存款和取款后更新我的余额......我已经尝试了我能做的一切,但仍然无法理解逻辑。有人可以帮助添加到我的程序中吗...谢谢

import java.util.Scanner;

public class bankJava
{

Scanner input = new Scanner(System.in);


double balance;
double amount;

public void withdraw()
{

System.out.println("Enter amount: ");
amount = input.nextInt();

balance = balance - amount;


}

public void deposit()
{

System.out.println("Enter amount: ");
amount = input.nextInt();
balance = balance + amount;

}

public void accBalance()
{


}



}

--------------------------------主要------------- -------------------

import java.util.Scanner;

public class bankJavaTest {

public static void main(String[] args){

Scanner input = new Scanner(System.in);

int action;

bankJava wdraw = new bankJava();
bankJava dposit = new bankJava();
bankJava balanceInquiry = new bankJava();
bankJava amount = new bankJava();

do{

System.out.println("Choose Action: ");
System.out.println("(1) Withdraw");
System.out.println("(2) Deposit");
System.out.println("(3) Balance Inquiry");
System.out.println("(4) Exit");
action = input.nextInt();


switch(action){



//---------WITHDRAW------------//
case 1 :

System.out.println("******Withdraw******");
wdraw.withdraw();
System.out.println("***************************");


break;

//---------DEPOSIT------------//
case 2 :

System.out.println("******Deposit******");
dposit.deposit();
System.out.println("***************************");
break;

//-----------Balance Inquiry-------//
case 3 :

System.out.println("******Balance Inquiry******");
balanceInquiry.accBalance();
System.out.println("***************************");

break;

case 4 :

System.out.println("Thank you for choosing our bank!");
break;

default :

System.out.println("Invalid action.");
break;

}
}while(action != 4);

}


}

最佳答案

为什么要建立 4 个不同的 JavaBank?对每个操作执行此操作,您将在不同的对象中执行每个方法。如果我很好地理解你的问题,我认为你可以在同一个对象中轻松解决你的问题。

import java.util.Scanner;

public class bankJavaTest {

public static void main(String[] args){

Scanner input = new Scanner(System.in);

int action;

bankJava myJavaBank = new bankJava(); //creating the bank


do{

System.out.println("Choose Action: ");
System.out.println("(1) Withdraw");
System.out.println("(2) Deposit");
System.out.println("(3) Balance Inquiry");
System.out.println("(4) Exit");
action = input.nextInt();


switch(action){



//---------WITHDRAW------------//
case 1 :

System.out.println("******Withdraw******");
myJavaBank.withdraw(); //withdrawing from it
System.out.println("***************************");


break;

//---------DEPOSIT------------//
case 2 :

System.out.println("******Deposit******");
myJavaBank.deposit(); //deposit from it
System.out.println("***************************");
break;

//-----------Balance Inquiry-------//
case 3 :

System.out.println("******Balance Inquiry******");
myJavaBank.accBalance();
//You don't post this method but I suppose it will refer to the same bank
System.out.println("***************************");

break;

case 4 :

System.out.println("Thank you for choosing our bank!");
break;

default :

System.out.println("Invalid action.");
break;

}
}while(action != 4);

}


}

现在应该可以了。使用您的代码,您有 4 家不同的银行,一家仅用于存款,另一家仅用于取款,依此类推。所以一家银行会继续加钱,一家银行会继续减钱。

此外,amount 参数不应该是 JavaBank 参数,而是在每个方法中添加一个局部变量,这样它就不会定义 Bank。

类似的东西

public class bankJava 
{

Scanner input = new Scanner(System.in);


double balance;

public void withdraw()
{

System.out.println("Enter amount: ");
double amount = input.nextInt();

balance = balance - amount;


}

public void deposit()
{

System.out.println("Enter amount: ");
double amount = input.nextInt();
balance = balance + amount;

}

我还建议将 input.nextInt() 更改为 input.nextDouble(),以便将金额创建为 double .

如果您没有看到余额查询,显然是因为您的 accBalance() 方法为空。像这样编辑它:

public void accBalance(){
System.out.println("Your balance is: "+this.balance);
}

关于java - 取款和存款后如何更新余额(取款,存款,余额查询)java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56706869/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com