我想要計算任何兩個給定時間之間的android應用程序的差異。爲了完成這個任務,我使用了JodaTime和Period類以及Period的getYears(),getDays(),getHours(),getMinutes()和getSeconds()方法。但是,我意識到它給出了日期中每個元素之間的絕對差異。例如,要求的日期我的功能2017-01-29 00:00:00 (yyyy-MM-dd HH:mm:ss)
和2018-01-28 00:00:00
將返回:JodaTime期間返回意想不到的結果
0 years
2 days
0 hours
0 minutes
0 seconds
當它應該在所有其他部分用零一起返回364 days
。當然,它是一個Android應用程序,所以我不打印它們,我正在單獨處理顯示。我可以在我的電腦上使用LocalDateTime和Duration.between來做到這一點,但我無法在這裏使用這些類。我正在尋找一個解決方案來解決我目前的方法(下面)或者一種全新方法的建議。先謝謝你。 我目前的功能:
public int[] getDifference(DateTime start, DateTime end){
Period p = new Period(start, end);
int[] differences = new int[5];
differences[0] = p.getYears();
differences[1] = p.getDays();
differences[2] = p.getHours();
differences[3] = p.getMinutes();
differences[4] = p.getSeconds();
return differences;
}
持續時間是你想要的 - 爲什麼你不能使用它? – GreyBeardedGeek