Разница между методами PrintWriter.printf и PrintWriter.format - PullRequest
3 голосов
/ 01 августа 2009

Есть ли разница между методами Java PrintWriter printf и format?

Док говорит, что printf - это удобный метод, но если он ведет себя точно так же, как format, поэтому я не понимаю, что с ним удобно.

Ответы [ 3 ]

4 голосов
/ 01 августа 2009

Удобный метод, как следует из названия - он существует просто для удобства, не обязательно для функции.

Один общий случай, когда существуют удобные методы, - это методы, которые имеют несколько аргументов, но некоторыеаргументы используются определенным образом.Много раз один и тот же метод будет перегружен разными аргументами.

Возьмите следующий код:

public void myMethod(int value, boolean hasImportance) {
    // do something.
}

public void myMethod(int value) {
    myMethod(value, true);
}

В приведенном выше примере метод myMethod(int) можно рассматривать как удобствометод для myMethod(int, boolean), поскольку он предоставляет аргумент по умолчанию для одного из своих параметров.

В случае PrintWriter.printf, он в основном вызывает PrintWriter.format, но просто предоставляет альтернативный способ вызова метода format.

Вероятно, обоснование создания метода printf в качестве вспомогательного метода заключается в том, что присвоение имени метода printf передает значение, котороекаждый пытается вывести с форматированием, а не просто format, который не передает намерение, что вы пытаетесь выполнить вывод с форматированием.

2 голосов
/ 01 августа 2009

Согласно это , они одинаковы

<code> /**
  ...
  * <p> An invocation of this method of the form <tt>out.printf(format,
  * args)</tt> behaves in exactly the same way as the invocation
  *
  * <pre>
  * out.format(format, args) 
... * / public PrintWriter printf (формат строки, объект ... аргументы) { формат возврата (формат, аргументы); }
1 голос
/ 01 августа 2009

Здесь удобство можно интерпретировать двумя способами.

Первый путь

Разработчики, как правило, больше знакомы с функцией "printf". Следовательно это часто используется.

Второй способ

Если необходимо внести какие-либо изменения в printf и формат (в случае каких-либо ошибок или функциональности),

одна функция может использоваться для сохранения старой функциональности, а другая может быть легко изменена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...