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

标签 java variables object methods

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

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

这是我司机的押金代码

 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/

相关文章:

java - 使用 Tomcat 运行 Servlet

java - 什么是NullPointerException,我该如何解决?

java - ArrayList 通过所有元素的索引更改进行随机化

javascript - Fullcalendar:如何从两个变量获取事件并通过 'eventAfterRender' 传递?

angularjs - AngularJS 中的 $scope 与 var

java - 访问由私有(private)自定义类组成的链表的元素

variables - 为什么 Go 允许编译未使用的函数参数?

java - 如何打印我的 Java 对象而不得到 "SomeType@2f92e0f4"?

javascript - 我如何确定一个对象在 Javascript 中是 "custom"?

javascript - 将 Jquery 对象数组传递到 php 数组