Получение текущей даты:
public static void main(String[] args) throws Exception { Date today = new Date(); System.out.println("Current date: " + today); }
Вычисление разницы между двумя датами:
public static void main(String[] args) throws Exception { Date currentTime = new Date(); //получаем текущую дату и время Thread.sleep(3000); //ждём 3 секунды – 3000 миллисекунд Date newTime = new Date(); //получаем новое текущее время long msDelay = newTime.getTime() - currentTime.getTime(); //вычисляем разницу System.out.println("Time distance is: " + msDelay + " in ms"); }
Наступило ли уже некоторое время:
public static void main(String[] args) throws Exception { Date startTime = new Date(); long endTime = startTime.getTime() + 5000; // +5 секунд Date endDate = new Date(endTime); Thread.sleep(3000); // ждем 3 секунды Date currentTime = new Date(); if (currentTime.after(endDate))//проверяем что время currentTime после endDate { System.out.println("End time!"); } }
Сколько прошло времени с начала сегодняшнего дня:
public static void main(String[] args) throws Exception { Date currentTime = new Date(); int hours = currentTime.getHours(); int mins = currentTime.getMinutes(); int secs = currentTime.getSeconds(); System.out.println("Time from midnight " + hours + ":" + mins + ":" + secs); }
Сколько дней прошло с начала года:
public static void main(String[] args) throws Exception { Date yearStartTime = new Date(); yearStartTime.setHours(0); yearStartTime.setMinutes(0); yearStartTime.setSeconds(0); yearStartTime.setDate(1); // первое число yearStartTime.setMonth(0); // месяц январь, нумерация для месяцев 0-11 Date currentTime = new Date(); long msTimeDistance = currentTime.getTime() - yearStartTime.getTime(); long msDay = 24 * 60 * 60 * 1000; //сколько миллисекунд в одних сутках int dayCount = (int) (msTimeDistance/msDay); //количество целых дней System.out.println("Days from start of year: " + dayCount); }