logo

Return Statement u Javi

Što je povratna izjava u Javi?

U Java programiranju, naredba return koristi se za vraćanje vrijednosti kada je izvršenje bloka dovršeno. Naredba return unutar petlje uzrokovat će prekid petlje i daljnje naredbe zanemarit će prevodilac.

Vraćanje vrijednosti iz metode

U Javi je svaka metoda deklarirana s tipom povrata kao što je int, float, double, string itd.

Ovi povratni tipovi zahtijevaju povratnu izjavu na kraju metode. Ključna riječ return koristi se za vraćanje dobivene vrijednosti.

Vraćajući tip void ne zahtijeva nikakav povratni iskaz. Ako pokušamo vratiti vrijednost iz metode void, prevodilac prikazuje pogrešku.

Slijede važne točke koje morate zapamtiti dok vraćate vrijednost:

  • Tip povrata metode i tip podataka koji se vraća na kraju metode trebaju biti istog tipa. Na primjer, ako je metoda deklarirana s tipom povrata float, vraćena vrijednost bi trebala biti samo tipa float.
  • Varijabla koja pohranjuje vraćenu vrijednost nakon poziva metode trebala bi biti slične vrste podataka, inače bi se podaci mogli izgubiti.
  • Ako je metoda deklarirana s parametrima, redoslijed parametra mora biti isti tijekom deklaracije i poziva metode.

Sintaksa:

Sintaksa izjave return je da ključnu riječ return prati vrijednost koju treba vratiti.

 return returnvalue; 

Sljedeći Java programi pokazuju korištenje povratnih naredbi.

primjer stabla binarnog pretraživanja

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

Izlaz:

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

U gornjem Java kodu, metoda UsporediBr je definiran s int vrsta povrata. Uspoređuje se x i i vrijednosti i vraća veći broj.

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

Izlaz:

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

U gornjem Java kodu, metoda UsporediBr je definiran s int povratni tip i dva argumenta x i i . Metoda uspoređuje x i i vrijednosti i vraća veći broj.

Vraćanje klase ili sučelja

Metoda može imati ime klase kao tip povrata. Stoga mora vratiti objekt točne klase ili njezine podklase.

regresijsko testiranje u testiranju softvera

Naziv sučelja također se može koristiti kao povratni tip, ali vraćeni objekt mora implementirati metode tog sučelja.

Sljedeći Java program prikazuje implementaciju naziva klase kao povratnog tipa.

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

Izlaz:

 Additon result: 150 

U gornjem kodu, a SumResult klasa sadrži dodatak metoda s nazivom klase kao tipom povrata. To vraća proizlaziti vrijednost i ispisuje je pomoću prikaz metoda.