我正在实现一个查找列表中元素的方法。该元素应存在于列表中。如果元素不存在,我不想返回null
,而是想抛出Exception
,但我不熟悉Java中的异常处理,我不知道Exception
是什么我应该抛弃这种情况。
我认为这是一个非常普遍的情况,所以我可以使用Java SE标准库中已有的Exception
。
在这种情况下我应该抛出什么Exception
?
答案 0 :(得分:6)
答案 1 :(得分:1)
就个人而言,我认为这不应该例外。有无数的元素不在列表中,因此无法找到元素的事实并不是特例,而是非常正常的。我更喜欢某种Option
或Maybe
类型作为返回类型。
我不知道为什么JRE还没有提供这种类型(在我看来这是一次大规模的监督),所以,不幸的是,你必须自己动手。但是,您可以在Web上找到大量Maybe
类型甚至Maybe
monad的Java实现示例。例如,它似乎是教授泛型的一个非常常见的介绍性示例。