这是我用来计算天数差异的代码:将“n”值视为我用作计数的值。在此之后,我使用 n%7 并使用剩余的时间来获得这一天。我使用的参考日期是 1.1.2000,这是一个星期六。但是,n 总是给出 0。为什么?怎么了 ?
我不能使用日历类。它必须是数学的。
public static void main(int d1, int d2, int m1, int m2, int y1, int y2)
{
int n =0;
for(;d1!=d2&&m1!=m2&&y1!=y2;n++)
{
if(m1==1 || m1==3 || m1==5 || m1==7 || m1==8 || m1==10 || m1==12)
{
if(d1==31)
{
m1++;
d1=1;
n++;
if(m1>12)
{
m1=1;
y1++;
}
}
else
{
d1++;
n++;
}
}
else if(m1==4 || m1==6 || m1==9 || m1==11)
{
if(d1==30)
{
m1++;
d1=1;
n++;
if(m1>12)
{
m1=1;
y1++;
}
}
else
{
d1++;
n++;
}
}
else if(m1==2)
{
if(returnLeap(y1))
{
if(d1==29)
{
m1++;
d1=1;
n++;
}
else
{
d1++;
n++;
}
}
else
{
if(d1==28)
{
m1++;
d1=1;
n++;
}
else
{
d1++;
n++;
}
}
}
}
System.out.println(n);
}