logo

Instruction de retour en Java

Qu’est-ce qu’une instruction return en Java ?

En programmation Java, l'instruction return est utilisée pour renvoyer une valeur lorsque l'exécution du bloc est terminée. L'instruction return à l'intérieur d'une boucle entraînera la rupture de la boucle et les autres instructions seront ignorées par le compilateur.

Renvoyer une valeur à partir d'une méthode

En Java, chaque méthode est déclarée avec un type de retour tel que int, float, double, string, etc.

Ces types de retour nécessitaient une instruction return à la fin de la méthode. Un mot-clé return est utilisé pour renvoyer la valeur résultante.

Le type de retour void ne nécessite aucune instruction return. Si nous essayons de renvoyer une valeur à partir d'une méthode void, le compilateur affiche une erreur.

Voici les points importants à retenir lors du renvoi d'une valeur :

  • Le type de retour de la méthode et le type de données renvoyées à la fin de la méthode doivent être du même type. Par exemple, si une méthode est déclarée avec le type de retour float, la valeur renvoyée doit être uniquement de type float.
  • La variable qui stocke la valeur renvoyée après l'appel de la méthode doit être d'un type de données similaire, sinon les données pourraient être perdues.
  • Si une méthode est déclarée avec des paramètres, la séquence du paramètre doit être la même lors de la déclaration et de l'appel de méthode.

Syntaxe:

La syntaxe d'une instruction return est la suivante : le mot-clé return est suivi de la valeur à renvoyer.

 return returnvalue; 

Les programmes Java suivants illustrent l'utilisation des instructions return.

SampleReturn1.java

 public class SampleReturn1 { /* Method with an integer return type and no arguments */ public int CompareNum() { int x = 3; int y = 8; System.out.println('x = ' + x + '
y = ' + y); if(x>y) return x; else return y; } /* Driver Code */ public static void main(String ar[]) { SampleReturn1 obj = new SampleReturn1(); int result = obj.CompareNum(); System.out.println('The greater number among x and y is: ' + result); } } 

Sortir:

 x = 3 y = 8 The greater number among x and y is: 8 

Dans le code Java ci-dessus, la méthode ComparerNum est défini avec le int type de retour. Il compare le X et et valeurs et renvoie le plus grand nombre.

SampleReturn2.java

 public class SampleReturn2 { /* Method with an integer return type and arguments */ public int CompareNum(int x, int y) { System.out.println('x = ' + x + '
y = ' + y); if(x>y) return x; else return y; } /* Driver Code */ public static void main(String ar[]) { SampleReturn2 obj = new SampleReturn2(); int result = obj.CompareNum(15,24); System.out.println('The greater number among x and y is: ' + result); } } 

Sortir:

 x = 15 y = 24 The greater number among x and y is: 24 

Dans le code Java ci-dessus, la méthode ComparerNum est défini avec int type de retour et deux arguments X et et . La méthode compare X et et valeurs et renvoie le plus grand nombre.

Renvoyer une classe ou une interface

Une méthode peut avoir le nom de la classe comme type de retour. Il doit donc renvoyer l'objet de la classe exacte ou de sa sous-classe.

Un nom d'interface peut également être utilisé comme type de retour, mais l'objet renvoyé doit implémenter les méthodes de cette interface.

Le programme Java suivant montre l'implémentation d'un nom de classe comme type de retour.

SampleReturn3.java

 class SumReturn { private int a; public SumReturn(int i) { a = i; } /*The addition method returns a SumReturn object with adding 100 into it. */ public SumReturn addition() { SumReturn result = new SumReturn(a + 100); return result; } public void display() { System.out.println('Additon result: ' + a); } } public class SampleReturn3 { /* Driver Code */ public static void main(String[] args) { SumReturn obj1 = new SumReturn(50); SumReturn obj2; /* addition method returns a reference of SumReult class */ obj2 = obj1.addition(); obj2.display(); } } 

Sortir:

 Additon result: 150 

Dans le code ci-dessus, un RésultatSomme la classe contient un ajout méthode avec le nom de classe comme type de retour. Il renvoie le résultat valeur et l'imprime en utilisant le afficher méthode.