考虑下列一般形式的函数:
Foo findFoo(Collection<Foo> foos, otherarguments)
throws ObjectNotFoundException {
for(Foo foo : foos){
if(/* foo meets some condition*/){
return foo;
}
}
throw new ObjectNotFoundException();
}
例如,一个具体的例子是:
User findUserByName(Collection<User> users, String name)
throws ObjectNotFoundException {
for(User user : users){
if(user.getName().equals(name)){
return user;
}
}
throw new ObjectNotFoundException();
}
如果找不到对象,这些函数将引发异常。我可以为此创建一个自定义异常类(在示例中是 ObjectNotFoundException
) ,但是我更喜欢使用现有的类。但是,我在标准 Java 库中找不到任何具有这种含义的异常类。你知道这里是否有一个可以使用的标准异常吗?