Java, почему этот текст не выравнивается в прямых столбцах? - PullRequest
0 голосов
/ 29 сентября 2019

Так что я хочу иметь возможность распечатывать объекты из списка в виде прямых столбцов.Проблема в том, что он не будет выравниваться по прямым столбцам.Я хочу, чтобы каждый параметр имел значение padleft.

Это мой результат.

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);
        }

1 Ответ

0 голосов
/ 29 сентября 2019

Если я вижу это правильно, у вас есть пробелы в строке формата:

"%s     %s     %s\n"

Они не будут правильно выравнивать "таблицу".Попробуйте использовать "tab" -символ "\ t":

"%s\t%s\t%s\n"
...