Quelle est la manière correcte de renvoyer un Void
lorsqu'il ne s'agit pas d'une primitive ? Par exemple, j'utilise actuellement null comme ci-dessous.
interface B<E>{ E method(); }
class A implements B<Void>{
public Void method(){
// do something
return null;
}
}
1 votes
J'écris un interpréteur pour un format de fichier, en utilisant le modèle d'interpréteur, mais certaines expressions n'ont pas de valeurs de retour.
4 votes
Il n'y a aucun moyen d'instancier le type Void, donc si vous devez vraiment retourner quelque chose de ce type, null est votre seule option. Cependant, vous n'avez probablement pas besoin de la valeur retournée pour quoi que ce soit, donc null devrait convenir.
0 votes
Oui, c'était ma logique aussi - je me demandais juste s'il y avait un moyen plus sémantique.
1 votes
Je le coderais comme votre exemple. C'est une bonne approche.