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

Метод toMillis

Метод toMillis класса TimeUnit преобразует время, заданное в текущей единице измерения, в миллисекунды. Метод вызывается у конкретного объекта TimeUnit, например SECONDS или MINUTES, и принимает один параметр - количество единиц времени, которое нужно перевести в миллисекунды. Возвращает метод значение типа long - количество миллисекунд.

Класс TimeUnit удобно использовать в многопоточном программировании: например, для перевода времени ожидания в миллисекунды перед вызовом Thread.sleep или Condition.await. Это делает код более читаемым, чем ручное умножение на 1000.

Синтаксис

timeUnit.toMillis(duration)

Пример

Давайте переведем 5 секунд в миллисекунды:

import java.util.concurrent.TimeUnit; public class Main { public static void main(String[] args) { long res = TimeUnit.SECONDS.toMillis(5); System.out.println(res); } }

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

5000

Пример

Давайте переведем 2 минуты в миллисекунды:

import java.util.concurrent.TimeUnit; public class Main { public static void main(String[] args) { long res = TimeUnit.MINUTES.toMillis(2); System.out.println(res); } }

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

120000

Пример

Давайте переведем 3 часа в миллисекунды:

import java.util.concurrent.TimeUnit; public class Main { public static void main(String[] args) { long res = TimeUnit.HOURS.toMillis(3); System.out.println(res); } }

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

10800000

Пример

Давайте переведем 1 день в миллисекунды:

import java.util.concurrent.TimeUnit; public class Main { public static void main(String[] args) { long res = TimeUnit.DAYS.toMillis(1); System.out.println(res); } }

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

86400000

Пример

Давайте переведем 500 микросекунд в миллисекунды. Обратите внимание: при переводе из меньшей единицы в большую дробная часть отбрасывается:

import java.util.concurrent.TimeUnit; public class Main { public static void main(String[] args) { long res = TimeUnit.MICROSECONDS.toMillis(500); System.out.println(res); } }

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

0

Пример

Давайте используем toMillis вместе с Thread.sleep, чтобы приостановить поток на время, заданное в секундах:

import java.util.concurrent.TimeUnit; public class Main { public static void main(String[] args) throws InterruptedException { long timeout = TimeUnit.SECONDS.toMillis(2); System.out.println("Before sleep"); Thread.sleep(timeout); System.out.println("After sleep"); } }

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

"Before sleep" "After sleep"

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

  • класс TimeUnit,
    который представляет единицы времени
  • метод sleep,
    который приостанавливает поток на заданное время
  • метод sleep класса Thread,
    который принимает время в миллисекундах
  • метод await,
    который ожидает сигнала с указанием времени
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить