我需要根据匹配删除数组的一个元素。这是我删除事件的方法。
public boolean removeEvent(int year, int month, int day, int start, int end, String activity)
{
Event newEvent = new Event(year, month, day, start, end, activity);
for (int i = 0; i < 5; i++)
{
if (newEvent.equals(events[i]))
{
events[i] = null;
newEvent = null;
numEvents--;
}
}
当我尝试
calendarTest1.removeEvent(2000, 1, 1, 1, 1, "Cal Test 1");
什么都没发生。我的数组中有一个包含这些值的元素,但它不会将该元素更改为 null。
这是做作业的,所以我真的不想被告知如何做,只是为什么这不起作用。谢谢你。
这是我的equals方法:
public boolean equals(Object obj){
Event someEvent = (Event) obj;
if(
this.date == someEvent.date
&&
this.start == someEvent.start
&&
this.end == someEvent.end
&&
this.activity.equals(someEvent.activity))
if(obj == null)
return false;
if(obj instanceof Event)
return true;
else
{
return false;
}
}
我尝试了很多不同的东西,但我仍然收到 NullPointerException 错误