提出任何建议
我试图以给定格式以两秒钟的方式在两次之间打印差异。我尝试了所有可能的解决方案,但无法打印以下格式
start time: 15:15:30
end time: 15:15:37
difference times:
15:15:31
15:15:32
15:15:33
15:15:34
15:15:35
15:15:36
关于如何使用Java 8?
使用Java.Time库:
LocalTime startTime = LocalTime.parse("15:15:30");
LocalTime endTime = LocalTime.parse("15:15:37");
for (LocalTime current = startTime; current.isBefore(endTime); current = current.plusSeconds(1)) {
System.out.println(current);
}
您可以制作2个不同的Calendar
对象,并将时间设置为开始时间和结束时间。
比较这两个实例,并添加第二个实例,直到它们都相等。您可以同时打印它们。
Calendar startTime = Calendar.getInstance(), endTime = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
startTime.setTime(sdf.parse("15:15:30"));
startTime.add(Calendar.SECOND, 1);
endTime.setTime(sdf.parse("15:15:37"));
while(startTime.compareTo(endTime) < 0) {
System.out.println(sdf.format(startTime.getTime()));
startTime.add(Calendar.SECOND, 1);
}
输出
15:15:31
15:15:32
15:15:33
15:15:34
15:15:35
15:15:36