我听到有些声音说从方法返回null值并进行检查是不好的设计。我希望听到一些原因。
伪代码:
variable x = object.method()
if (x is null) do something
我听到有些声音说从方法返回null值并进行检查是不好的设计。我希望听到一些原因。
伪代码:
variable x = object.method()
if (x is null) do something
对于我的使用情况,我需要从方法中返回一个Map,然后查找特定的键。但是如果我返回一个空的Map,那么它将导致NullPointerException,这样返回null而不是空的Map并没有太大的区别。 但是从Java8开始,我们可以使用Optional。以上正是引入Optional概念的原因。
你好,
许多API在无法创建新对象时返回NULL是标准做法。
为什么这是不好的设计我不知道。
编辑:这适用于没有异常处理机制的语言,例如C语言,在这些语言中这已经成为惯例多年了。
希望对你有所帮助。
祝你愉快,