我对Joda Time有问题。。。所以,我正在开发一种时间差方法,我将计算间隔甜菜文2次。。。我必须开发2个案例,但我不知道我该怎么做:
1°案例-区间
date1 = "01/02/2014 9:00";
date2 = "01/02/2014 18:00";
Expected result: 9 hours
2°情况-时差
date1 = "9:00";
date2 = "1:00";
Expected result: 8
我该怎么办?我很困惑。。。
谢谢你们!!
class HourDeltaCalculator {
// assuming you want month first like in US-date-format?
private static final DateTimeFormatter FORMATTER =
DateTimeFormat.forPattern("MM/dd/yyyy H:mm");
public static int hoursBetween(String date1, String date2) {
LocalDateTime ldt1 = FORMATTER.parseLocalDateTime(date1);
LocalDateTime ldt2 = FORMATTER.parseLocalDateTime(date2);
return Hours.hoursBetween(ldt1, ldt2).getHours();
}
}
此代码产生:
String date1 = "01/02/2014 9:00";
String date2 = "01/02/2014 18:00";
System.out.println(hoursBetween(date1, date2)); // 9
您的另一个案例可以用非常类似的方式完成,但使用LocalTime
而不是LocalDateTime
。顺便说一下,09:00和01:00之间的差异不是8
,而是-8
。