我想爲我的PhoneDirectory程序創建一個addChangeEntry方法,它的功能是搜索並向目錄添加新條目,如果名稱傳遞不存在或者聯繫人已存在,更新其號碼。我在PhoneDirectory程序中如何處理NullPointerException
我不斷收到NullPointerExceptions,因爲我相信我的x值等於null。學習完這些之後,我試圖捕獲並處理異常,但我仍然收到NullPointerExceptions。
addChangeEntry代碼:
public String addChangeEntry(String name, String telno) {
for (DirectoryEntry x : theDirectory) {
try {
if (x == null) {
Logger logger = Logger.getLogger(ArrayPhoneDirectory.class.getName());
logger.log(Level.WARNING, "User with no name found");
continue;
}
else if (x.getName().equals(name)) {
x.setNumber(telno);
return x.getNumber();
}
add(name, telno);
}
catch (Exception ex) {
System.out.println("Exception found");
throw ex;
}
}
return null;
}
如何處理這個異常任何幫助將不勝感激,因爲它是目前停止我的程序進行測試。
不允許'theDirectory'爲null – Brian
@staticx我會在哪裏聲明? –
你初始化了'theDirectory'嗎?因爲如果一個對象爲null,你應該有什麼工作,但是如果你沒有初始化這個對象,你將會有一個錯誤 – Snox