0
私はSwingで否定的な問題を抱えています。何らかの理由でBig Decimalの否定と加算が機能しません。コードはコンパイルされますが、マイナスとプラスの計算は機能しません。BigDecimalの計算が機能しないのはなぜですか?
コードスニペット
//Convert the JLabel to a Double so we can perform negation.
diallerPanelSum = new BigDecimal(balanceAmount.getText());
//Dont allow the Balance to go negative!
if(diallerPanelSum.compareTo(BigDecimal.ZERO)>0)
{
if(e.getSource()==buttonMakeCall)
{
diallerPanelSum.subtract(new BigDecimal("1.0"));
}
if(e.getSource()==buttonSendText)
{
diallerPanelSum.subtract(new BigDecimal("0.10"));
}
if(e.getSource()==buttonTopUp)
{
diallerPanelSum.add(new BigDecimal("10.00"));
}
}
//Convert the Float back to a JLabel
balanceAmount.setText(String.valueOf(diallerPanelSum));
diallerPanelSumはすでにBigDecimalです – Ninja2k
試しましたか?既存の 'BigDecimal'は変更されていないので、' add() 'または' subtract() '(新しいオブジェクト)の結果を' diallerPanelSum'に再度割り当てる必要があります。ドキュメントをお読みください。 –
ああ、私はコードを誤解しました!はい、うまくいきました! – Ninja2k