Шрифт:
В этом разделе мы предложим три варианта. Первые два основаны на методе
Третью возможность предоставляет класс
Если все это вам не подходит, можете придумать собственный алгоритм. Все три решения включены в один фрагмент кода:
7.12. Проверка года на високосность
В классе
Любой ребенок знает первое правило проверки на високосность: год должен делиться на 4. Меньшее число людей знают второе правило: год не должен делиться на 100. И уж совсем немногие знают про исключение из второго правила: если год делится на 400, то он високосный. Таким образом, последний год тысячелетия является високосным, только если делится на 400; так, 1900 год не был високосным, а 2000 был. (Эта поправка необходима, потому что в году не ровно 365.25 дней, а приблизительно 365.2422.)
В классе
Я привел этот код только для того, чтобы прояснить алгоритм; конечно, гораздо проще вызвать метод
7.13. Определение часового пояса
Метод
К сожалению, время хранится относительно текущего часового пояса, а не того, для которого был создан объект. При желании можно скорректировать его самостоятельно.
7.14. Манипулирование временем без даты
Иногда нужно работать с временем дня в виде строки. На помощь снова приходит метод
А можно только на часы и минуты (прибавив 30 секунд, мы даже можем округлить до ближайшей минуты):
Наконец, со стандартного 24-часового представления можно переключиться на 12-часовой формат, добавив признак перехода через полдень (АМ/РМ):
Есть и другие возможности — поэкспериментируйте!
7.15 Сравнение моментов времени
К классу