我应该将一个toString方法添加到banckAccount类。

它应返回用逗号和空格分隔的名称。 Ex: "Yana"和余额3.03,调用yana.toString()应该返回字符串"Yana, $3.03"

我尝试添加:

public String toString() {
    return  name + ", " + "$"+ balance;
}


当我输入以下内容时,它可以工作:

"user, $90.01"


但是当我进入

"Bankrupt Government, -$765432.10"


我不断得到:

 "Bankrupt Government, $-765432.1"


码:

import java.util.*;

public class BankAccount {

     String name;
     double balance;

     public void deposit (double amount ){
          balance = balance + amount;


     }

     public void withdraw ( double amount) {
          balance = balance - amount ;
     }

  }//end of class

最佳答案

您的答案就在这里:

return  name + ", " + "$"+ balance;


Java只是将您定义的字符串串联起来。因此,如果balance是负数,您将得到$,后跟一个负数。

如果希望它在正确的位置显示-,则可以执行以下操作:

String sign = (balance < 0) ? "-" : "";
System.out.println(name + ", " + sign + "$" + Math.abs(balance));

07-22 06:05