Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么在$符号之前打印负号?_Java_String - Fatal编程技术网

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

Java 为什么在$符号之前打印负号?,java,string,Java,String,我应该向banckAccount类添加一个toString方法 它应该返回一个由逗号和空格分隔的名称Ex:“Yana”和余额3.03,调用Yana.toString()应返回字符串“Yana,$3.03” 我试图补充: public String toString() { return name + ", " + "$"+ balance; } 当我输入以下内容时,它会起作用: "user, $90.01" 但是当我进去的时候 "Bankrupt Government, -$76

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

它应该返回一个由逗号和空格分隔的名称
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"      
代码:


您的余额为负数,因此它按列表打印。这是必须的

if(balance < 0){
   balance = balance * -1;
   return  name + ", " + "-$"+ balance;
}
else{
  return  name + ", " + "$"+ balance;
}
if(余额<0){
余额=余额*-1;
返回名称+”,“+”-$”+余额;
}
否则{
返回名称+“,”+“$”+余额;
}

您的余额为负数,因此会按所列方式打印。这是必须的

if(balance < 0){
   balance = balance * -1;
   return  name + ", " + "-$"+ balance;
}
else{
  return  name + ", " + "$"+ balance;
}
if(余额<0){
余额=余额*-1;
返回名称+”,“+”-$”+余额;
}
否则{
返回名称+“,”+“$”+余额;
}

您的答案就在这里:

return  name + ", " + "$"+ balance;
Java只是按照您定义的字符串进行连接。因此,如果
余额
是一个负数,您将得到
$
,后跟一个负数

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

String sign = (balance < 0) ? "-" : "";
System.out.println(name + ", " + sign + "$" + Math.abs(balance));
String符号=(余额<0)?"-" : "";
System.out.println(name+“,”+符号+“$”+数学abs(余额));

您的答案就在这里:

return  name + ", " + "$"+ balance;
Java只是按照您定义的字符串进行连接。因此,如果
余额
是一个负数,您将得到
$
,后跟一个负数

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

String sign = (balance < 0) ? "-" : "";
System.out.println(name + ", " + sign + "$" + Math.abs(balance));
String符号=(余额<0)?"-" : "";
System.out.println(name+“,”+符号+“$”+数学abs(余额));

很明显,您的方法toString()正在做什么。如果余额为负数,则只需在“$”后面加上“-”号即可。如果余额为正或否,我会检测:

private String to字符串(){
如果(余额>0.0){
返回名称+“,”+“$”+余额;
}否则{
返回名称+“,-$”+(余额*(-1));
}
}

private String to字符串(){
返回名称+“,”+
余额>0.0?(“$”+余额):(“-$”+(余额*(-1));

}

很明显,您的方法toString()正在做什么。如果余额为负数,则只需在“$”后面加上“-”号即可。如果余额为正或否,我会检测:

private String to字符串(){
如果(余额>0.0){
返回名称+“,”+“$”+余额;
}否则{
返回名称+“,-$”+(余额*(-1));
}
}

private String to字符串(){
返回名称+“,”+
余额>0.0?(“$”+余额):(“-$”+(余额*(-1));
}

希望这有助于运行此程序
import java.util.*;
导入java.io.*;
公共类HelloWorld{
公共字符串toString(){
如果(平衡)希望这有助于运行此程序
import java.util.*;
导入java.io.*;
公共类HelloWorld{
公共字符串toString(){

如果(平衡)您在哪里执行输入?您在哪里执行输入?是的,这正是我需要的!!非常感谢您的帮助!是的,这正是我需要的!!非常感谢您的帮助!非常感谢您的帮助!非常感谢您的帮助!非常感谢您的帮助!