Java: Более легкая симпатичная печать?

Я не забываю слышать, что, будучи функциональным языком, Lisp был очень хорошим выбором для реализации рекурсивных алгоритмов. Способность разыскать дерево и работу Ваш путь назад важна при рассмотрении процессов принятия решений (обход) и конечный результат (вершина).

Это было сказано мне во время курса AI в университете, где мы изучили Lisp.

10
задан falstro 9 December 2009 в 18:44
поделиться

5 ответов

Вам нужна длина поля. Попробуйте использовать это:

printf ("%-32s %f\n", pt.toString(), conditionalProbs[1])

-32 говорит вам, что строку следует выровнять по левому краю, но с длиной поля 32 символа (по вашему вкусу, я выбрал 32, так как это кратно 8, что является нормальной вкладкой остановка на терминале). Использование того же самого в заголовке, но с % s вместо % f сделает эту линию также красивой.

15
ответ дан 3 December 2019 в 17:20
поделиться

Что вам нужно, так это удивительный, но бесплатный format () .

Он работает, позволяя вам указывать заполнители в строке шаблона; он производит комбинацию шаблона и значений в качестве вывода.

Пример:

System.out.format("%-25s %9.7f%n", "K and Burstner", 0.055170);
  • % s - это заполнитель для строк;
  • % 25s означает заполнение любой данной строки пробелом до 25 символов.
  • % - 25s означает выравнивание строки по левому краю в поле, т. Е. Заполнение справа от строки.
  • % 9.7f означает вывод числа с плавающей запятой, всего 9 разрядов и 7 справа от десятичной.
  • % n необходимо для "выполнения" завершения строки, что вы и делаете в противном случае отсутствует при переходе от System.out.println () к System.out.format () .

В качестве альтернативы вы можете использовать

String outputString = String.format("format-string", arg1, arg2...);

для создания вывода Строка

4
ответ дан 3 December 2019 в 17:20
поделиться

Как насчет

System.out.printf("%-30s %f\n", pt.toString(), conditionalProbs[1]);

См. Документацию для дополнительной информации о мини-языке Formatter .

2
ответ дан 3 December 2019 в 17:20
поделиться

Возможно, метод java.io.PrintStream printf и / или format - это то, что вы ищете .. .

0
ответ дан 3 December 2019 в 17:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: