我有以下代码
{
Calendar mSunday = getToday();
mSunday.add(Calendar.YEAR, 2);
mSunday.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
Calendar mMonday = getToday();
mMonday.add(Calendar.YEAR, 2);
mMonday.add(Calendar.WEEK_OF_YEAR, -1);
mMonday.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
}
public static Calendar getToday() {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.HOUR, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
calendar.set(Calendar.AM_PM, 0);
return calendar;
}
我记录日期,我想要的输出应该是
Sun Jun 03 00:00:00 IST 2018
Mon May 28 00:00:00 IST 2018
但是当我在Samsung Note 2中运行相同的代码时,我得到的输出为
Sun Jun 10 00:00:00 GMT+05:30 2018
Mon May 28 00:00:00 GMT+05:30 2018
有人可以解释为什么使用Samsung Note 2时的差异,因为Calendar是一个Java对象,应该独立于Android版本模型或者无论如何。
答案 0 :(得分:1)
我曾在日历上工作过。你只需要在日历对象中使用Local。