我的日历有问题。 这是代码:
Calendar mCalendar = Calendar.getInstance();
mToday[0] = mCalendar.get(Calendar.DAY_OF_MONTH);
mToday[1] = mCalendar.get(Calendar.MONTH); // zero based
mToday[2] = mCalendar.get(Calendar.YEAR);
无法运行我的项目,因为AndroidStudio在Calendar.DAY_OF_MONTH
,Calendar.MONTH
等上显示错误...我在模拟器中运行时出现nullPointException
这就是
必须是以下之一: java.util.Calendar.DAY_OF_MONTHjava.util.Calendar.MONTH等......
我不明白这个错误,因为Calendar.MONTH
是java.util.calendar.MONTH
我有一个导入
import java.util.Calendar;
抱歉,我错过了它的初始化,但还有一个其他类我想使用Calendar.MONTH等等:
mCalendarToday = Calendar.getInstance();
...
int dayOfWeek = mCalendar.get(Calendar.DAY_OF_WEEK);
int firstDay = getDay(mCalendar.get(Calendar.DAY_OF_WEEK);
OR
private Calendar mCalendarToday;
...
private boolean isToday(int day, int month, int year) {
if (mCalendarToday.get(Calendar.MONTH) == month
&& mCalendarToday.get(Calendar.YEAR) == year
&& mCalendarToday.get(Calendar.DAY_OF_MONTH) == day) {
return true;
}
return false;
}
这里也显示错误。以及我将使用的所有其他行。
答案 0 :(得分:0)
我确实相信您访问日历的方式是正确的。
我猜测你尝试添加值的int[]
未初始化。
你必须致电
int[] mToday = new int[3];
答案 1 :(得分:0)
硬编码。但必须工作。
int[] mToday = new int[]{};
java.util.Calendar calendar = java.util.Calendar.getInstance();
mToday[0] = calendar.get(java.util.Calendar.DAY_OF_MONTH);
mToday[1] = calendar.get(java.util.Calendar.MONTH);
mToday[2] = calendar.get(java.util.Calendar.YEAR);
答案 2 :(得分:0)
也许你没有初始化你的字段。我在Eclipse中试过它,这很有效。
int[] mToday = new int[10];
Calendar mCalendar = Calendar.getInstance();
mToday[0] = mCalendar.get(Calendar.DAY_OF_MONTH);
mToday[1] = mCalendar.get(Calendar.MONTH); // zero based
mToday[2] = mCalendar.get(Calendar.YEAR);
答案 3 :(得分:0)
它看起来像Android Studio的一个错误:0.5.5