РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
747 of 1163 menu

Класс Formatter

Класс Formatter из пакета java.util используется для создания форматированных строк. Он работает по принципу шаблона: в строку формата вставляются специальные спецификаторы, которые заменяются на переданные значения. Первым параметром конструктор принимает объект, в который будет записан результат (например, StringBuilder или System.out), либо строку формата. Вторым и последующими параметрами передаются аргументы для подстановки. Спецификаторы начинаются с символа % и могут содержать флаги, ширину, точность и тип преобразования. Наиболее часто используемые спецификаторы: %s для строк, %d для целых чисел, %f для чисел с плавающей точкой, %n для перевода строки.

Синтаксис

Formatter formatter = new Formatter(destination, locale); formatter.format(format, args);

Пример

Давайте создадим объект Formatter, связанный с StringBuilder, и отформатируем строку с несколькими спецификаторами:

import java.util.Formatter; public class Main { public static void main(String[] args) { StringBuilder sb = new StringBuilder(); Formatter formatter = new Formatter(sb); formatter.format("Name: %s, Age: %d, Score: %.2f%n", "abcde", 25, 123.456); System.out.println(sb.toString()); formatter.close(); } }

Результат выполнения кода:

"Name: abcde, Age: 25, Score: 123.46"

Пример

Давайте используем Formatter для вывода в стандартный поток вывода System.out:

import java.util.Formatter; public class Main { public static void main(String[] args) { Formatter formatter = new Formatter(System.out); formatter.format("Value 1: %d%n", 12345); formatter.format("Value 2: %s%n", "abcde"); formatter.format("Value 3: %f%n", 123.456); formatter.close(); } }

Результат выполнения кода:

"Value 1: 12345" "Value 2: abcde" "Value 3: 123.456000"

Пример

Давайте отформатируем числа с указанием ширины поля и выравнивания:

import java.util.Formatter; public class Main { public static void main(String[] args) { StringBuilder sb = new StringBuilder(); Formatter formatter = new Formatter(sb); formatter.format("|%10s|%n", "abcde"); formatter.format("|%-10s|%n", "abcde"); formatter.format("|%10d|%n", 12345); formatter.format("|%010d|%n", 12345); System.out.println(sb.toString()); formatter.close(); } }

Результат выполнения кода:

"| abcde|" "|abcde |" "| 12345|" "|0000012345|"

Смотрите также

  • метод format,
    который форматирует строку с помощью спецификаторов
  • метод toString,
    который возвращает отформатированную строку
  • метод printf,
    который выполняет форматированный вывод
  • метод format,
    который форматирует и выводит данные
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить