Как определить текущее время (секунды) в формате int в Android?
Нужно определить, сколько секунд прошло с 00:00. То есть взять значение часов, умножить на 3600 и добавить умноженные на 60 минуты. Но как получить значение часов и минут? Или есть другой более легкий способ?
Ответы (2 шт):
Текущая дата и время в Java
Получить текущую дату и время в Java достаточно не трудно. Вы можете использовать простой объект date вместе с методом toString(), чтобы вывести текущую дату и время следующим образом:
import java.util.Date;
public class Test {
public static void main(String args[]) {
// Инициализация объекта date
Date date = new Date();
// Вывод текущей даты и времени с использованием toString()
System.out.println(date.toString());
}
}
Получим следующий результат:
Sun Nov 13 00:14:19 FET 2016
Сравнение дат
Существуют три способа в Java сравнить даты:
Можно использовать функцию getTime(), чтобы получить количество миллисекунд, прошедших с момента полуночи 1 января 1970, для обоих объектов, а затем сравнить эти два значения.
Вы можете использовать методы before(), after() и equals(). Поскольку 12 число месяца раньше 18 числа, например, new Date(99, 2, 12).before(new Date (99, 2, 18)) возвращает значение true.
Можно использовать метод compareTo(), который определяется сопоставимым интерфейсом и реализуется по дате.
Разница дат в Java измерить точку во времени в миллисекундах.
import java.util.*;
public class Test {
public static void main(String args[]) {
try {
long start = System.currentTimeMillis();
System.out.println(new Date() + "\n");
Thread.sleep(10000);
System.out.println(new Date() + "\n");
long end = System.currentTimeMillis();
long diff = end - start;
System.out.println("Разница между датами: " + diff + " миллисекунд");
}catch (Exception e) {
System.out.println("Получили исключение!");
}
}
}
Получим следующий результат:
Sun Nov 13 03:22:10 FET 2016
Sun Nov 13 03:22:20 FET 2016
Разница между датами: 10081 миллисекунд
int hour = date.getHours();
int min = date.getMinutes();
int sec = date.getSeconds();
int hourS = hour * 3600;
int minS = min * 60;
public int output = hourS + minS + sec;