Return (programování)
Return je v informatice název klíčového slova, které v programování slouží pro návrat z podprogramu, ve kterém bylo použito. Po návratu pokračuje hlavní program ve vykonávání původním kódu za příkazem, který způsobil odskok na zmíněný podprogram. V některých programovacích jazycích může příkaz return
„vrátit“ jakýkoliv druh datového typu, podle toho jak je příslušný podprogram deklarován. Podprogram, který vrací hodnotu, může být nazýván „funkce“ (v OOP pak metoda).
Přehled
V programovacím jazyku Java je příkaz return value;
(kde value
je hodnota, objekt nebo datový typ) používán v metodách. Pokud je metoda deklarovaná s návratovým typem void, může být příkaz return
použit bez parametru. V tom případě je vykonávání podprogramu přerušeno (viz též break) a řízení je předáno do nadřízeného kódu, který metodu „zavolal“.
Příklad použití příkazu return
public static int minimumFce(int n1, int n2) {
int min;
if (n1 > n2)
min = n2;
else
min = n1;
return min;
}
V uvedeném příkladu je použito navrácení datového typu Integer. Hlavní program zavolá např. int MIN = minimumFce(3,4);
. V té chvíli se deklaruje MIN jako Integer a provádí se metoda minimumFce, která porovná n1
a n2
, což jsou v tomto případě n1
= 3 a n2
= 4. Do deklarovaného int min;
je uložena větší hodnota, kterou metoda vypočítá a return min;
způsobí návrat z metody a předá do nadřízeného kódu hodnotu do minimumFce(3,4);
. Tudíž se do MIN
uloží 4.
V případě, že by příkaz return
měl navrátit datový typ String, avšak v metodě by bylo deklarováno (int n1, int n2)
a v jejímž obsahu by žádný String nebyl, tak je vyvolána chyba.
Příkaz return;
může navrátit hodnotu null
, pokud by metoda byla deklarována jako void
nebo když se mění proměnné v jiném podprogramu.
Syntaxe
Příkaz return
může být používán mnoha způsoby, v tabulce jsou uvedeny příklady:
Programovací
jazyk |
Zápis |
---|---|
Ada, Bash, C, C++, Java, PHP, C#, JavaScript, D | return value;
|
BASIC | RETURN
|
Lisp | (return value)
|
Perl, Ruby | return @values;
return $value;
return;
|
Python | return value
|
Smalltalk | ^ value
|
Visual Basic .NET | Return value
|
Windows PowerShell | return value;
|
x86 assembly | ret
|
V některých JSA je používán tvar „RTS“ (ReTurn from Subroutine).