gpt4 book ai didi

java - 调用方法,但不会返回值。 java

转载 作者:行者123 更新时间:2023-12-01 12:13:14 25 4
gpt4 key购买 nike

所以我有一个任务,我必须开设一个银行账户。长话短说,我有一个类,它在方法中包含您的操作(存款、取款等),还有一个驱动程序,它会填充空白(即客户名称、余额等),并调用另一个类的方法。

现在是我的问题。例如,当我存款时,我的变量向该方法发送罚款并正确进行数学计算并获得正确的余额,但返回余额的新值是一个问题。它仍然与驱动程序中之前的值相同。

这是我司机的押金代码

 String deposit1 = JOptionPane.showInputDialog ("How much would you like to deposit?");
int deposit = Integer.parseInt (deposit1);
myBank.getDeposit(deposit, balance);

这是我的存款方式代码

 public void getDeposit(int deposit, int balance)
{
if (deposit<0)
{
System.out.println ("Invalid Number");
deposit=0;
}
balance =balance + deposit;
}

任何帮助将不胜感激,似乎找不到任何解决方案,我已经被困了一段时间

谢谢

P.S 这是我第一次来这些论坛,如果我做错了什么,很抱歉

P.P.S 我的java知识不是那么高,还是个初学者

编辑:我们已经学习了实例变量,并且接触了一些 return 语句,但我们还没有学习有关 passby 的任何内容。我所说的返回是指给司机正确的值(value),如果这让你失望了,抱歉

Edit2:非常感谢user1710742,终于明白了。我现在知道了。有道理

最佳答案

问题是您正在尝试更改变量的副本,而不是您提供给该方法的确切副本。当您退出该方法时,副本将被销毁,并且只剩下未更改的原始值。

除非您使用 return 语句告诉该方法,否则该方法无法返回值。

public int getDeposit(int deposit, int balance)
{
if (deposit<0)
{
System.out.println ("Invalid Number");
deposit=0;
}
return balance + deposit;
}

调用:int Total = myBank.getDeposit(存款, 余额);

关于java - 调用方法,但不会返回值。 java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27162365/

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