Должен быть отдельный объект для обработки форматирования. Вот почему вы видите форматирование объектов для дат и чисел в java.text, потому что существует так много разных форматов, вам нужны специальные форматиры, отделенные от объектов данных.
Глядя на то, что toString
для, в description given in the javadoc является
Возвращает строковое представление объекта. В общем случае метод toString возвращает строку, которая «текстово представляет» этот объект . Результат должен быть кратким, но информативным представлением , которое легко прочитать человеку. Рекомендуется, чтобы все подклассы переопределили этот метод.
Одерски/Ложка/Веннерс книга Программирование в Scala говорит:
Результат toString
в первую очередь предназначен, чтобы помочь программистам путем предоставления информации, которая может быть использована в отладочные печати, журнал сообщений, отчетов об ошибках тестирования и выводах интерпретатора и отладчика.
Также Effective Java (Пункт 10: Всегда Override toString
), кажется, предполагает, что цель ToString является предоставление диагностической информации для разработчиков при отладке или регистрации.
Я бы сохранил реализацию toString, которую вы используете для отладки, и создайте отдельный объект форматирования CSV для работы с генерацией csv. Таким образом, цель toString по-прежнему заключается в отладке, разделение проблем поддерживается между заданием объекта как держателем данных и генерацией CSV.
используют два метода? –