用java 完成 一个连续 签到的功能,求思路。。。。
今天签到连续签到数+1明天签到,在+1中间断了,就不加了,重新计算,就是这么一个功能。我现在的思路是,签到的时候获取今天的日期,并保存起来,明天签到的时候,判断一下日期-...
今天签到 连续签到数+1 明天签到, 在+1 中间断了,就不加了,重新计算,就是这么一个功能。
我现在的思路是,签到的时候获取今天的日期,并保存起来,明天签到的时候,判断一下日期-1 是不是保存起来的那个日期。
关键是现在有个情况,就是隔月签到,每个月天数不一样,这样的话就没办法正确判断了。
所以想请教一下各位大神的思路,真心想不起来 - -!
有没有可以直接获取昨天日期的方法啊?
或者获取上个月的最大天数?
先谢谢各位大神们了,不用具体的代码,说下思路就行,或者说下方法名就可以(当然有代码更好了,呵呵)
我去,我完全纠结了,月份对了,天不对,获取的还是这个月的天数。。。
谁有封装好的 代码,我复制得了。。。
这个是我写的
public String getLastMonthDay()
{
Calendar cal = Calendar.getInstance();
Date date = new Date();
cal.setTime(date);
int year = 0;
int month = cal.get(Calendar.MONTH); // 上个月月份
System.out.println("###last month:" + month);
if (month == 0)
{
year = cal.get(Calendar.YEAR) - 1;
month = 12;
}
else
{
year = cal.get(Calendar.YEAR);
}
cal.set(month, 1);//把日期设置为当月第一天
cal.roll(month, -1);//日期回滚一天,也就是最后一天
int MaxDate=cal.get(Calendar.DATE);
String endDay = year + "-" + month + "-" + MaxDate;
return endDay;
} 展开
我现在的思路是,签到的时候获取今天的日期,并保存起来,明天签到的时候,判断一下日期-1 是不是保存起来的那个日期。
关键是现在有个情况,就是隔月签到,每个月天数不一样,这样的话就没办法正确判断了。
所以想请教一下各位大神的思路,真心想不起来 - -!
有没有可以直接获取昨天日期的方法啊?
或者获取上个月的最大天数?
先谢谢各位大神们了,不用具体的代码,说下思路就行,或者说下方法名就可以(当然有代码更好了,呵呵)
我去,我完全纠结了,月份对了,天不对,获取的还是这个月的天数。。。
谁有封装好的 代码,我复制得了。。。
这个是我写的
public String getLastMonthDay()
{
Calendar cal = Calendar.getInstance();
Date date = new Date();
cal.setTime(date);
int year = 0;
int month = cal.get(Calendar.MONTH); // 上个月月份
System.out.println("###last month:" + month);
if (month == 0)
{
year = cal.get(Calendar.YEAR) - 1;
month = 12;
}
else
{
year = cal.get(Calendar.YEAR);
}
cal.set(month, 1);//把日期设置为当月第一天
cal.roll(month, -1);//日期回滚一天,也就是最后一天
int MaxDate=cal.get(Calendar.DATE);
String endDay = year + "-" + month + "-" + MaxDate;
return endDay;
} 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询