我正在尝试为我的PhoneDirectory程序创建一个addChangeEntry方法,它的功能是搜索,如果传递的名称不存在,或者如果联系人已经存在,则在目录中添加新条目,更新它们的编号。< / p>
我一直在获取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;
}
非常感谢有关如何处理此异常的任何帮助,因为它目前正在暂停我对该程序的测试。
答案 0 :(得分:0)
如果你的假设是正确的并且它是x
为空。那么这可能是你的问题,在捕获异常后,你抛出它throw ex;
这就是为什么你还活着如果您不希望程序停止,只需将其从代码中删除即可。