Mikä on paluulause Javassa?
Java-ohjelmoinnissa return-käskyä käytetään arvon palauttamiseen, kun lohko on suoritettu loppuun. Silmukan sisällä oleva return-käsky saa silmukan katkeamaan ja kääntäjä jättää huomiotta muut käskyt.
internetin käyttöä
Arvon palauttaminen menetelmästä
Javassa jokainen menetelmä ilmoitetaan palautustyypillä, kuten int, float, double, string jne.
Nämä palautustyypit vaativat return-lauseen menetelmän lopussa. Tuloksena olevan arvon palauttamiseen käytetään return-avainsanaa.
Void return -tyyppi ei vaadi return-lausetta. Jos yritämme palauttaa arvon void-metodista, kääntäjä näyttää virheen.
Seuraavat ovat tärkeitä asioita, jotka on muistettava arvon palauttamisen yhteydessä:
- Metodin palautustyypin ja menetelmän lopussa palautetun tiedon tyypin tulee olla samaa tyyppiä. Jos menetelmä on esimerkiksi ilmoitettu float-palautustyypillä, palautettavan arvon tulee olla vain float-tyyppiä.
- Palautetun arvon menetelmän kutsun jälkeen tallentavan muuttujan tulee olla samanlainen tietotyyppi, muuten tiedot saattavat kadota.
- Jos menetelmä on määritelty parametreilla, parametrien järjestyksen on oltava sama deklaraatiossa ja menetelmäkutsussa.
Syntaksi:
Return-lauseen syntaksi on return-avainsana, jota seuraa palautettava arvo.
return returnvalue;
Seuraavat Java-ohjelmat osoittavat return-lauseiden käytön.
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); } }
Lähtö:
x = 3 y = 8 The greater number among x and y is: 8
Yllä olevassa Java-koodissa menetelmä VertaaNum on määritelty kanssa int palautustyyppi. Se vertaa x ja ja arvot ja palauttaa suuremman luvun.
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); } }
Lähtö:
x = 15 y = 24 The greater number among x and y is: 24
Yllä olevassa Java-koodissa menetelmä VertaaNum on määritelty kanssa int palautustyyppi ja kaksi argumenttia x ja ja . Menetelmä vertaa x ja ja arvot ja palauttaa suuremman luvun.
Luokan tai käyttöliittymän palauttaminen
Metodin palautustyypinä voi olla luokan nimi. Siksi sen on palautettava tarkan luokan tai sen alaluokan objekti.
Liittymän nimeä voidaan käyttää myös palautustyyppinä, mutta palautettavan objektin tulee toteuttaa kyseisen rajapinnan menetelmät.
Seuraava Java-ohjelma näyttää luokan nimen toteutuksen palautustyyppinä.
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(); } }
Lähtö:
js vaihto
Additon result: 150
Yllä olevassa koodissa a SumResult luokka sisältää an lisäys menetelmä, jonka palautustyyppi on luokan nimi. Se palauttaa tulos arvo ja tulostaa sen käyttämällä näyttö menetelmä.