【问题标题】:Formatting output java格式化输出java
【发布时间】:2015-11-15 20:09:36
【问题描述】:

我正在努力让我的输出看起来更好一些。只要我保持非常简单(如下所示),它就可以正常工作,但是当我将信息放入 ArrayList 并使用构造函数时,我就卡住了。

public class printing2 {
    public static void main(String[] args) {

        System.out.format("%-10s%-15s%-15s",
            "LastName", "FirstName", "SocialNo");
        System.out.println();
        System.out.format("%-10s%-15s%-15s",
            "James", "Johnson", "12345678");        
    }
}

我已经尝试用 Google 搜索这个问题已经有一段时间了,我已经尝试了大约一千种不同的方法来解决这个问题,但我似乎无法正确解决这个问题。

【问题讨论】:

  • 请分享有问题的代码
  • 你期待什么输出?
  • 如果你想看到它像一张桌子,你应该使用\t,但不清楚你想做什么......
  • 如果您不向我们展示不起作用的代码,我们应该如何判断您做错了什么?

标签: java format output


【解决方案1】:

JJ72, 你很亲密。这可能是您正在寻找的:

public class Main {
    public static void main(String[] args) {

        ArrayList<testPrint> list = new ArrayList<>();

        testPrint p1 = new testPrint("James", "Johnson", "12345678");

        list.add(p1);

        System.out.println(String.format("%-15s%-15s%-15s", "FirstName", "LastName", "SocNumber"));
        for (testPrint l : list) {
            System.out.println(String.format("%-15s%-15s%-15s", l.getFname(), l.getLname(), l.getnumber()));
        }
    }
}

【讨论】:

  • 啊啊啊啊。是的!非常感谢。我必须将格式“放入”println 语句并获取。我想打印出来的变量。太棒了:)