3

Java(Android)に2つの日付(Date1とDate2)がある場合、Date2がDate1の同じ日​​にあるかどうかをどのように知ることができますか?(注:Date2-Date1 <24時間の場合は除きます)。いくつかの例(同じ月と年を想定)

 Date1: day=14 hour=00:00           Date2: day=14 hour=00:00    --> Result TRUE
 Date1: day=13 hour=23:59           Date2: day=14 hour=00:00    --> Result FALSE
 Date1: day=14 hour=05:00           Date2: day=14 hour=00:00    --> Result TRUE
 Date1: day=14 hour=00:00           Date2: day=15 hour=00:00    --> Result FALSE

ありがとう

4

2 に答える 2

11

使ってみませんDateUtilsか?

isSameDayのようなメソッドを直接呼び出すことができます

if (DateUtils.isSameDay(date1, date2)) {
    System.out.println("Same Date");
} else if (date1.before(date2)) {
    System.out.println("date1 before date2");
} else {
    System.out.println("date1 after date2");
}

ApacheDateUtilsを確認してください。

于 2012-04-27T19:01:08.353 に答える
4

これをJavaからコピーしました。2つの日付を比較して、同じ日にあるかどうかを確認します。

Calendar cal1 = Calendar.getInstance();
Calendar cal2 = Calendar.getInstance();
cal1.setTime(date1);
cal2.setTime(date2);
boolean sameDay = cal1.get(Calendar.YEAR) == cal2.get(Calendar.YEAR) &&
                  cal1.get(Calendar.DAY_OF_YEAR) == cal2.get(Calendar.DAY_OF_YEAR);
于 2012-04-27T18:53:00.223 に答える