​java​​ 的格式化输出

如何控制java对字符串进行格式化输出?

1.示例

同c语言的 ​​printf​​ 函数,

  • 代码:
public class PrintFormat {
public static void main(String[] args) {
double d = 3.1415926;
int count = 1;
System.out.printf("%.2f\n",d);
System.out.printf("%05.2f\n",d);
System.out.printf("%1$d,%2$.2f",count,d);
}
  • 执行结果
    java 的格式化输出_java

对参数进行一个说明:

​System.out.printf("%.2f\n",d);​​表示的是:输出变量d,保留其两位小数;

​System.out.printf("%05.2f\n",d);​​ 表示的是:输出变量d,保留其两位小数,同时输出的值占5位,如果位数不足,补前导0。

​System.out.printf("%1$d,%2$.2f",count,d);​​表示的是:同时输出多个变量,先输出的是count,再输出d。控制变量顺序的是​​1$​​,和​​2$​​。同时这个也可以写成​​System.out.printf("%d,%.2f",count,d);​​只需要保证变量跟输出一一对应就ok了。