比较两个日期是否在android中的同一周内

Ata*_*CSE 7 java android date

我有两个约会.来自......

Calendar c=Calendar.getInstance();
year=c.get(c.YEAR);
month=c.get(c.MONTH);
month++;
date=c.get(c.DATE);
Run Code Online (Sandbox Code Playgroud)

和其他日期分为date2,month2

现在我想看看他们两个是否在同一周.

通过大量的计算和逻辑可以实现.当第一个日期假设为3月3日,第2个日期为28Feb时,会出现问题.它们都在同一周,但难以比较/检查.所以我想知道是否有任何内置功能或任何方式来轻松比较它们.请帮助..........

Fab*_*ook 14

使用这样的东西:

Calendar c = Calendar.getInstance();
Integer year1 = c.get(c.YEAR);
Integer week1 = c.get(c.WEEK_OF_YEAR);

Calendar c = Calendar.getInstance();
c.setTimeInMillis(/*Second date in millis here*/);
Integer year2 = c.get(c.YEAR);
Integer week2 = c.get(c.WEEK_OF_YEAR);

if(year1 == year2) {
    if(week1 == week2) {
         //Do what you want here
    }
}
Run Code Online (Sandbox Code Playgroud)

这应该这样做:D

  • 如果我的日期是12月31日(星期二),那么1月1日(星期三)不会被认为是同一周的逻辑. (6认同)

Ole*_*eev 5

您可以使用您的日期获取周数,c.get(Calendar.WEEK_OF_YEAR)并比较两个日期的结果.

另外,c.YEAR不建议通过实例变量()访问常量- 使用classes(Calendar.YEAR)访问它们.

  • 但首先你想检查它们是否是同一年,否则你可以比较两个不同的年份,它们可能略有不同 (2认同)