#java
#java
Вопрос:
Как получить количество миллисекунд с 15 октября 2011 года, 1:52:34 вечера.
Я могу получить количество миллисекунд с текущего времени.
Date date = new Date();
long currentTime = date.getTime();
System.out.println("Current time in long: " currentTime);
Комментарии:
1. нет, это не домашнее задание… Я готовлюсь к собеседованию, поэтому мне задали несколько вопросов по кодированию.. Так вот о чем я спрашиваю ..!!
2. Вопрос об интервью не особенно хорошо сформулирован. Теоретически исходное время может находиться в любом часовом поясе, и это может привести к изменению ответа на что угодно вплоть до почти 24 часов, что составляет ужасно много миллисекунд!
Ответ №1:
long now = System.currentTimeMillis(); // Simpler way to get current time
Date date = new SimpleDateFormat("dd yyyy h:mm:ss a").parse("15 2011 1:52:34 PM");
long timeElapsed = now - date.getTime(); // Here's your number of ms
Комментарии:
1. Это дает правильный ответ, только если указанное время находится в часовом поясе по умолчанию для компьютера, на котором запущена программа. Это может быть то, что требуется, но, вероятно, это не следует предполагать без дополнительного ввода.
Ответ №2:
Используйте API календаря. Затем установите месяц, дату и время, которые вы хотите (15 октября 2011 года). Для начала изучите это:
Calendar c = Calendar.getInstance();
Надеюсь, это поможет!
Ответ №3:
import java.util.Calendar;
import java.util.Date;
public class TimeMilisecond {
public static void main(String[] argv) {
long lDateTime = new Date().getTime();
System.out.println("Date() - Time in milliseconds: " lDateTime);
Calendar lCDateTime = Calendar.getInstance();
System.out.println("Calender - Time in milliseconds :" lCDateTime.getTimeInMillis());
}
}
Ответ №4:
Вы можете использовать SimpleDateFormat для анализа произвольной даты и получения разницы в мс.
Ответ №5:
Используйте java.util.Календарь и заполните его информацией о дате. Затем используйте java.util.Calendar.getTimeInMillis()
, чтобы получить количество миллисекунд с момента эпохи.