正面数字的Java打印符号

Sel*_*mez 3 java

我有一个Java程序,它从一些用户输入做了一堆计算,最后它必须打印平面的方程.平面方程的格式为6x-2y + 3z-4 = 0.

要获得值6,-2,3,&-4来自一堆计算.所以我打算打印出方程式

System.out.println("Equation is: " + aa + "x" + bb +
"y" + cc + "z" + gg + "=0");
Run Code Online (Sandbox Code Playgroud)

其中aa,bb,cc,gg对应于上面的4个整数.但输出是

Equation is: 6x-2y3z-4=0
Run Code Online (Sandbox Code Playgroud)

它似乎在那里打印负号的负号,但如果数字是正数,我怎么能打印出一个加号?像在-2y3z之间应该是6x-2y + 3z-4 = 0

dev*_*ull 5

你可以使用System.format():

System.out.format("Equation is: %dx %+dy %+dz %+d = 0\n", aa, bb, cc, gg);
                                     ^    ^    ^
Run Code Online (Sandbox Code Playgroud)

指定+标志将包括正面或负面的标志.

你可以找到有关格式化数字输出的详细信息在这里.