JTextField只显示绝对值,不显示负号



我正在开发一个"银行账户"类型的程序,我的目标是取款和存款,显示更新的余额,显示账户状态(透支或未透支)。我只是在进行加法/减法和更新余额,但我的JTextFields中的数字是绝对值,不会显示负余额(余额<0)。有什么格式需要我做吗?我已经包含了我的按钮监听器代码,以及我为将doubles转换为字符串等所做的一些解析。请帮忙!

     depositButton.addActionListener(new DepositListener());
     withdrawButton.addActionListener(new WithdrawListener());
    //create object of BankAccount, assign values to the text fields
     BankAccount myAcct = new BankAccount(1524687, 100.00, "Landon Wiggs");
     acctNameF.setText(myAcct.getName() );
     acctNumF.setText(Integer.toString( myAcct.getAcctNumber() ) );
     acctBalanceF.setText( Double.toString(myAcct.getBalance()));
     depositWithdrawAmtF.setText("0.00");

  private class DepositListener implements ActionListener 
{
      public void actionPerformed (ActionEvent event)
      {  
         double sum = Double.valueOf(depositWithdrawAmtF.getText()) + Double.valueOf(acctBalanceF.getText());
         double amt = (Double.parseDouble(depositWithdrawAmtF.getText()));
         acctBalanceF.setText(Double.toString(sum)); 
      }
   }
private class WithdrawListener implements ActionListener {
      public void actionPerformed (ActionEvent event) {
         double sum = (Double.valueOf(depositWithdrawAmtF.getText() )) - (Double.valueOf(acctBalanceF.getText() ));
         double amt = (Double.parseDouble(depositWithdrawAmtF.getText()));
         acctBalanceF.setText(Double.toString(sum));   
      }
   }

当你提取时,你可能应该从账户资金中减去提取金额,现在你却在做相反的事情。

更改

double sum = (Double.valueOf(depositWithdrawAmtF.getText() )) - (Double.valueOf(acctBalanceF.getText() ));

double sum = Double.valueOf(acctBalanceF.getText()) - Double.valueOf(depositWithdrawAmtF.getText());

最新更新