На этом шаге мы продолжим разговаривать про класс String
В классе String есть также функция для форматирования текста. Это функция format. Ее сигнатура следующая:
public static String format(String format, Object... args)
Из сигнатуры видно, что функция format является статической. Она принимает строку для форматирования и аргументы для строки форматирования. Данная функция напоминает функцию printf языка программирования c++.
В строке форматирования можно использовать следующие символы:
Обозначение | Тип |
---|---|
%s | String |
%d | целое число, например, int, long |
%f | вещественное число: float, double |
%b | boolean |
%c | char |
%t | Date |
%% | Символ % |
Чтобы лучше понять как использовать функцию format напишем программу для форматирования даты.
import java.util.Date; /** * Пример использования функции format * */ public class Main { public static void main(String[] args) { /*Формируем шаблон*/ String template = "%d.%d.%d %d:%d:%d"; Date date = new Date(); /*Получаем текущий день*/ int day = date.getDate(); /*Получаем месяц. Нумерация начинается с 0*/ int month = date.getMonth() + 1; /*Получаем год. Для получения года нужно добавить 1900*/ int year = date.getYear() + 1900; /*Получаем количество часов*/ int hours = date.getHours(); /*Получаем количество минут*/ int minutes = date.getMinutes(); /*Получаем количество секунд*/ int seconds = date.getSeconds(); /*Формируем строку с помощью шаблона и выводим ее на экран*/ String ans = String.format(template, day, month, year, hours, minutes, seconds); System.out.println(ans); } }
Проект можно взять здесь
Рис.1. Вывод программы
На следующем шаге мы закончим изучение этого вопроса