用java格式化控制台中的输出打印

用java格式化控制台中的输出打印,java,Java,使用System.out.format()我的代码无效,找不到将输出打印到控制台的正确格式 System.out.format("%03d%-15s%18d%n",ID[i],name[i],salary[i]); 格式化代码(使用左缩进)没有提供预期的完美输出 ============================================ Employee Details ===========================

使用
System.out.format()
我的代码无效,找不到将输出打印到控制台的正确格式

System.out.format("%03d%-15s%18d%n",ID[i],name[i],salary[i]);
格式化代码(使用左缩进)没有提供预期的完美输出

============================================
               Employee Details             
============================================
     ID          Name            Salary     
============================================
001john                        12000
002clark                       13000
003nancy                       14000
004joe                         15000
005mark                        17000
此代码没有缩进,其输出为

System.out.format("%03d%15s%18d%n",ID,name,salary);

============================================
               Employee Details             
============================================
     ID          Name            Salary     
============================================
001           john             10000
002         markus             12000
003          clark             14000
004          nancy             13000
005            joe             14000
============================================
               Employee Details             
============================================
     ID          Name            Salary     
============================================
    001          john            10000
    002          markus          12000
    003          clark           14000
    004          nancy           13000
    005          joe             14000
但是期望的输出是

System.out.format("%03d%15s%18d%n",ID,name,salary);

============================================
               Employee Details             
============================================
     ID          Name            Salary     
============================================
001           john             10000
002         markus             12000
003          clark             14000
004          nancy             13000
005            joe             14000
============================================
               Employee Details             
============================================
     ID          Name            Salary     
============================================
    001          john            10000
    002          markus          12000
    003          clark           14000
    004          nancy           13000
    005          joe             14000
有人能指出格式化程序应该如何更改以获得上述所需的输出,从而使每个变量都保持缩进。

您可以使用tab
(\t)
在java控制台中格式化输出打印

比如:

System.out.format("%03d\t\t\t%-15s\t\t\t%18d\t\t\t%n",ID[i],name[i],salary[i]);

为什么不直接使用
\t
?使用循环中用于打印员工详细信息的相同格式,就像使用“ID Name Salary”(字符串文本)一样