java - 取消引用可空对象有哪些模式?

标签 java design-patterns

有没有类似于 Groovy 的 safe navigation operator 的模式? ?这是 null 值有意义的地方,允许抛出 NullPointerException 是错误的。

除了检查 null,还有哪些其他选项? String 类提供了一个 static method取消引用可能的空值,但除了 Objects 之外似乎没有太多使用此模式类(class)。 Google 的 Guava 项目确实有一个 Optional类,但这需要调用者提供一个默认值,与安全导航运算符相比,这似乎太多了,而且大多数时候你只希望它为 null。看起来像这样的东西:

com.google.common.base.Optional.of(fooBar).
    or(org.mockito.Mockito.mock(FooBar.class));

null object patternoption monad在 Scala 中不是我正在寻找的或将此类运算符添加到 Java 的 future 版本中的建议,我正在寻找现在可以在 Java 中应用的模式。

最佳答案

没有。只是一个很好的老式 if-else。如果感觉更像模式,您可以使用三元运算符。您可以使用匿名类和 Callable 等来设计一些模式化的东西,但在 Java 中它会非常非常难看。

关于java - 取消引用可空对象有哪些模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9345508/

相关文章:

java - CheckedTextView 在自定义 ListView 中不起作用

java apache HC BasicHttpEntityEnclosingRequest 与 BasicHttpRequest

java - 什么是单例,用简单的英语?

android - 如何识别 Android 中的 TAP(摇动)模式?

java - 相对于面板java绘制椭圆

Java 日期迭代器工厂,具有指定如何计算间隔的规则

java - 在 UML 中表示关联和继承

parsing - 解析文本的设计模式

design-patterns - 禁用不受支持的功能的好方法是什么?

java - 在 Java 中维护错误代码列表的最有效方法