java时间函数

1、是否同一周
public static boolean isSameWeek(long loginTime, long nowTime) {
Calendar cal1 = Calendar.getInstance();
cal1.setTimeInMillis(loginTime);
int monday = cal1.get(Calendar.DAY_OF_WEEK);
if (monday == 0)
monday = 7;
cal1.add(Calendar.DAY_OF_MONTH, -monday + 1);
cal1.set(Calendar.HOUR, 0);
cal1.set(Calendar.MINUTE, 0);
cal1.set(Calendar.SECOND, 0);

Calendar cal2 = Calendar.getInstance();
cal2.setTimeInMillis(loginTime);
cal2.add(Calendar.DAY_OF_MONTH, 6);
cal2.set(Calendar.HOUR, 23);
cal2.set(Calendar.MINUTE, 59);
cal2.set(Calendar.SECOND, 59);

// 比较第二个时间是否与第一个时间在同一周
if (nowTime >= cal1.getTimeInMillis()
&& nowTime <= cal2.getTimeInMillis()) {
return true;
}

return false;
}
2、是否同一天
public static boolean isSameDayOfMillis(final long ms1, final long ms2) {
final long interval = ms1 - ms2;
return interval < MILLIS_IN_DAY && interval > -1L * MILLIS_IN_DAY
&& toDay(ms1) == toDay(ms2);
}
3、相差天数
public static int timeDiff(long begin, long end) {

int day = (int) ((end - begin) / MILLIS_IN_DAY);

return day;
}

猜你喜欢

转载自janzxx.iteye.com/blog/2026502