ユーザーがすべてのスケジュールの数を選択して削除する機能があります。削除の私のロジックは、削除しi
たいものを見つけて、配列の最後のスケジュールをそのスケジュールと交換し、最後のスケジュールをi
nullにすることです。
プログラムをテストすると、配列の最後の 1 つを削除しようとするとすべて正常に動作することがわかりますが、他の何かを削除しようとすると、Eclipse でエラーが表示されます。
スレッド「メイン」の例外 java.lang.NullPointerException 何が起こっているのかわかりません。私は自分のコードを何度も見直しました。
public void ScheduleDelete(){
StandardInputRead readDeleteSchedule = new StandardInputRead();
int deleteScheduleNum =readDeleteSchedule.readPositiveInt("Enter the schedule number you want to delete: ");
for(int i=0;i<scheduleSize;i++){
if(deleteScheduleNum==this.scheduleList[i].getScheduleNum()){
this.scheduleList[i]= this.scheduleList[this.scheduleSize-1];
this.scheduleList[i].setScheduleNum(i);
this.scheduleList[this.scheduleSize-1]= null;
}
}
this.scheduleSize--;
}