gpt4 book ai didi

java - 为什么负号打印在 $ 符号之前?

转载 作者:行者123 更新时间:2023-12-01 08:04:07 26 4
gpt4 key购买 nike

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

它应该返回一个由逗号和空格分隔的名称。 例如:“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));

关于java - 为什么负号打印在 $ 符号之前?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22924058/

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