De acuerdo, definitivamente hay un pensamiento diferente, en mi mundo, no puedo imponer "Nunca pasar un nulo" porque estoy tratando con terceros incontrolables como llamadas de API, registros de bases de datos, antiguos programadores, etc., así que soy paranoico y defensivo en los enfoques . Como estás en Java8 o posterior, hay un enfoque un poco más limpio que un if
bloque.
public String foo(@Nullable String mayBeNothing) {
return Optional.ofNullable(mayBeNothing).orElse("Really Nothing");
}
También puede lanzar alguna excepción al cambiar .orElse
a
orElseThrow(() -> new Exception("Dont' send a null"))
.
Si no desea utilizar @Nullable, que no agrega nada funcionalmente, ¿por qué no solo nombra el parámetro mayBe...
para que su intención sea clara?