Получение текущей даты:
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);
}