Java,这段文本为什么不以直列对齐?

问题描述 投票:0回答:1

所以,我希望能够从直列列表中打印出对象。问题在于它不会在直列中对齐。我希望每个参数都左移。

这是我的结果。

Results

我尝试使用String.format();,如下所示。它既不向左也不向右填充。

            String text = "";
            String text1 = "";



            for (Pet pet: h1.getPets()) {
                text = String.format("%-10s%10s%14s\n", pet.getName(), pet.getWeight() + "g", pet.getType());
                text1 += text;
            }

            String text2 = String.format("%s     %s     %s\n", "Namn:", "Vikt(gram):", "Djur:\n------------------------------------------");
            JOptionPane.showMessageDialog(null, text2 + text1, "HOTELLETS GÄSTER", JOptionPane.INFORMATION_MESSAGE);
        }
java foreach linked-list alignment
1个回答
0
投票

如果我没看错,格式字符串中有空格:

"%s     %s     %s\n"

他们将无法正确对齐“表格”。尝试使用“制表符”-符号“ \ t”:

"%s\t%s\t%s\n"
© www.soinside.com 2019 - 2024. All rights reserved.