首页 > 解决方案 > arrayList 的 Printf 输出到具有适当缩进的表

问题描述

我基本上完成了我的任务,但输出中需要一些格式,我只是不明白如何使用它printf来解决问题。我以前从未使用过它。

我有用户输入的 ID 和密码,它们保存在数组列表中。

输出应如下所示:

    Nr. Name                               Password (ROT13)
-----------------------------------------------------------
 1. Sally Hu                               nopNOP
 2. Bernd das Brot                         zrvaCnffjbeg
 3. John Doe                               klmTRURVZ
-----------------------------------------------------------

但对我来说是这样的:

 Nr. Name                                 Password (ROT13)
-----------------------------------------------------------
 1. Sally Hu                               nopNOP
 2. Bernd das Brot                             zrvaCnffjbeg
 3. John Doe                               klmTRURVZ
-----------------------------------------------------------

打印的当前代码:

  System.out.println("Nr. Name                       Passwort (ROT13)");


    System.out.println("-----------------------------------------------------------");
                    for(int i = 0; i < userList.size();i++)
                    {
                        System.out.println((userList.indexOf(userList.get(i))+1) +". " + userList.get(i).getmId() + "       " + rot13(userList.get(i).getmPw()));    
                    }

如果有人可以快速帮助我,甚至可以解释一些printf用于解决此格式问题的使用函数?(所以我可以printf在将来正确格式化,而不是在我的打印行中使用 +" "+ 这种hacky伪格式化,这会导致像这里这样的问题)

标签: javaarraylistformatprintftabular

解决方案


您可以在 System.out.println 中使用“\t”进行标识:

System.out.println("test\ttest2");

推荐阅读