繁体   English   中英

Java的时差Joda时间

[英]Difference hours Joda time in Java

我对Joda Time有问题...所以,我正在开发一种时差方法,我将计算两次beetwen的间隔...我必须开发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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM