Hemant Yadav:
Alguém pode me ajudar a entender a diferença entre os três métodos anotados valor de retorno seguintes, ou seja, como é que as restrições sobre o tipo de retorno de cada diferem umas das outras:
static @Nullable double[] multiply(){...}
static @Nullable double @Nullable[] multiply(){...}
static double @Nullable[] multiply(){...}
Lino:
@Nullable double[]
: A matriz pode ser ela próprianull
@Nullable double @Nullable[]
: A matriz pode ser ela próprianull
e pode conter elementos que sãonull
double @Nullable[]
: A matriz pode conter elementos que sãonull
Embora para matrizes primitivas que não faz muito sentido, já que os elementos em um double
(ou qualquer outro primitivo) matriz são não nulo.
Esta anotação faria sentido para os tipos de mensagens publicitárias ou geralmente para objetos:
Double @Nullable[]