logo

Return Statement i Java

Vad är ett returmeddelande i Java?

I Java-programmering används return-satsen för att returnera ett värde när exekveringen av blocket är slutfört. Return-satsen inuti en loop kommer att få slingan att bryta och ytterligare satser kommer att ignoreras av kompilatorn.

Returnera ett värde från en metod

I Java deklareras varje metod med en returtyp som int, float, double, string, etc.

Dessa returtyper krävde en retursats i slutet av metoden. Ett returnyckelord används för att returnera det resulterande värdet.

Den ogiltiga returtypen kräver inget returmeddelande. Om vi ​​försöker returnera ett värde från en void-metod visar kompilatorn ett fel.

postorder traversal

Följande är de viktiga punkterna du måste komma ihåg när du returnerar ett värde:

  • Returtypen för metoden och typen av data som returneras i slutet av metoden bör vara av samma typ. Till exempel, om en metod deklareras med float return-typen, bör det returnerade värdet endast vara av float-typ.
  • Variabeln som lagrar det returnerade värdet efter att metoden anropats bör vara en liknande datatyp, annars kan data gå förlorade.
  • Om en metod deklareras med parametrar måste sekvensen för parametern vara densamma medan deklaration och metod anropar.

Syntax:

Syntaxen för en retursats är att nyckelordet return följs av värdet som ska returneras.

 return returnvalue; 

Följande Java-program visar användningen av retursatser.

SampleReturn1.java

byggare designmönster
 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); } } 

Produktion:

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

I ovanstående Java-kod, metoden JämförNum definieras med int returtyp. Den jämför x och och värderar och returnerar det större talet.

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); } } 

Produktion:

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

I ovanstående Java-kod, metoden JämförNum definieras med int returtyp och två argument x och och . Metoden jämför x och och värderar och returnerar det större talet.

Returnera en klass eller gränssnitt

En metod kan ha klassnamnet som returtyp. Därför måste den returnera objektet för den exakta klassen eller dess underklass.

Ett gränssnittsnamn kan också användas som en returtyp, men det returnerade objektet måste implementera metoder för det gränssnittet.

en rad objekt java

Följande Java-program visar implementeringen av ett klassnamn som en returtyp.

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(); } } 

Produktion:

 Additon result: 150 

I ovanstående kod, a SumResult klass innehåller en tillägg metod med klassnamn som returtyp. Den returnerar resultat värde och skriver ut det med hjälp av visa metod.