Instruction Return dans la méthode void
J'ai la méthode suivante qui retourne void et j'ai besoin de l'utiliser dans une autre méthode qui renvoie également nulle.
Je peux faire la suite?
public void doSomething(){}
public void myMethod()
{
return doSomething();
}
Merci pour tous vos commentaires, mais permettez-moi d'être plus précis
Je ne doSomething
si quelque chose se passe, sinon je fais d'autres choses
public void doSomething(){}
public void myMethod()
{
for(...)
if(somethingHappens)
{
doSomething();
return;
}
doOtherStuff();
}
Au lieu de le code ci-dessus, je peux juste écrire return doSomething();
à l'intérieur de l'instruction si?
Aussi, assurez-vous de garder votre capitalisation droit.
S'il vous plaît vérifier mes mises à jour de réponse.
est-il possible de revenir à quelque chose quand vous utilisez vide?
Return
devrait être return
et Public
devrait être public
.S'il vous plaît vérifier mes mises à jour de réponse.
est-il possible de revenir à quelque chose quand vous utilisez vide?
OriginalL'auteur monica | 2012-06-11
Vous devez vous connecter pour publier un commentaire.
Pas, il suffit de faire ceci:
ou dans le deuxième cas:
"Retour void" signifie retourner rien. Si vous souhaitez faire "sauter" hors de
myMethod
's du corps, de l'utilisationreturn;
Le compilateur ne permet pas l'écriturereturn void;
("illégale début de l'expression") oureturn doSomething();
("ne peut pas renvoyer une valeur à partir de la méthode dont le résultat est de type void"). Je comprends, il semble logique de retour "vide" ou le "vide" résultat d'un appel de méthode, mais un tel code serait trompeuse. Je veux dire, la plupart des programmeurs qui ont lu quelque chose commereturn doSomething();
pourrait penser qu'il est quelque chose de retour.return
pour une instruction if à l'intérieur d'unvoid
fonction, il suffit de laisser (sauter) la fonction!OriginalL'auteur kol
nulle fonctions ne sont pas/ne peut pas revenir en quoi que ce soit. Il suffit d'appeler la fonction.
OriginalL'auteur Samy Vilar
Pas, les retours sont inutiles en Java void functione. Au lieu de cela, faire cela:
Vous pouvez mettre un retour après doSomething() si vous voulais, mais comme je l'ai dit que ça serait inutile.
OriginalL'auteur MattS
Vous avez juste à utiliser doSoemthing comme les autres l'ont souligné OU
Si faire quelque chose qui retourne un int
j'espère que efface jusqu'
OriginalL'auteur Matt Westlake
Si
(somethingHappens)
dépend en réalité de ce quedoSomething()
nedoSomething()
est une méthode que vous pouvez modifieralors vous devriez envisager de faire revenir le
boolean
(ou tout type), valeur qui indique le destinataire de l'appel de la méthode si c'est arrivé ou pas.Code serait ressembler à quelque chose comme ceci:
OriginalL'auteur Krzysztof Jabłoński