我在一个项目中工作,我在Date中有两种类型.我想计算这两个日期之间的周数.日期可能是不同的年份.对此有什么好的解决方案吗?
我试图用其他主题中提出的Joda-time来实现这一点.
我不熟悉这个库,但我尝试做这样的事情:
public static int getNumberOfWeeks(Date f, Date l){
Calendar c1 = Calendar.getInstance();
Calendar c2 = Calendar.getInstance();
c1.setTime(f);
c2.setTime(l);
DateTime start = new DateTime(c1.YEAR, c1.MONTH, c1.DAY_OF_MONTH, 0, 0, 0, 0);
DateTime end = new DateTime(c2.YEAR, c2.MONTH, c2.DAY_OF_MONTH, 0, 0, 0, 0);
Interval interval = new Interval(start, end);
Period p = interval.toPeriod();
return p.getWeeks();
}
Run Code Online (Sandbox Code Playgroud)
但这完全错了......有什么建议吗?
我希望得到特定月份/年的第一个星期一的日子.
是)我有的:
我基本上有两个int变量,一个代表年份,一个代表月份.
我想要的是:
我想知道本月的第一个星期一,最好是int或Integer值.
例如:
我有2014年和1月(1月),这个月的第一个星期一是6号,所以我想返回6.
问题:
我以为我可以这样做,Calendar但我已经无法设置只有年和月的日历.此外,我不知道如何实际返回月/年的第一个星期一Calendar.
我已经尝试过了:
Calendar cal = Calendar.getInstance();
cal.set(this.getYear(),getMonth(), 1);
int montag = cal.getFirstDayOfWeek();
for( int j = 0; j < 7; j++ ) {
int calc = j - montag;
if( calc < 0 ) {
calc += 6;
}
weekDays[calc].setText(getDayString(calc));
}
Run Code Online (Sandbox Code Playgroud)