Fragment wykładu z mentorem w ramach kursu Codegym University. Zapisz się na pełny kurs.
- Znowu ty, Amigo. Cóż, cześć.
- Wygląda na to, że nie cieszysz się, że mnie widzisz, Diego?
„Odniosłem wrażenie, że myślisz, że nauczyłeś się już wszystkiego o metodach w Javie”.
"Och, ja nie..."
- Nie sądzę! Nie znasz nawet połowy.
"Jasne, nie potępiam...
„Dobra, dość gadania. Czas zacząć. Zaczniemy od czegoś prostego. Na przykład od tego, że Java posiada instrukcję return . Pozwala ona na natychmiastowe zakończenie metody, w której została wywołana. Oto instrukcja:
return;
„To proste: samotne słowo, return
po którym następuje średnik. Gdy tylko program wykona tę instrukcję, bieżąca metoda kończy działanie, a metoda wywołująca jest kontynuowana.
„Jeśli return
w metodzie zostanie wywołane main
, metoda main
natychmiast się zakończy, a wraz z nią cały program.
Przykład:
|
Metoda fill wypełnia część przekazanej tablicy wartością value . Część tablicy do wypełnienia jest określona przez indeksy from i to . Jeśli from jest mniejsza 0 lub to większa niż długość tablicy, metoda kończy się natychmiast. |
„Powyższy program ma fill
metodę, która wypełnia przekazaną do niego tablicę value
. Nie wypełnia całej tablicy, tylko część określoną przez indeksy from
i to
.
„Na początku metody fill
sprawdzane są przekazane wartości, aby upewnić się, że są prawidłowe. Jeśli from
jest mniejsza niż 0 lub to
większa niż długość tablicy, metoda fill
natychmiast się kończy (wykonuje return
instrukcję).”
„Rozumiem. Czy to wszystko, co robi to stwierdzenie?”
„Właściwie to return
stwierdzenie jest bardziej przydatne niż myślisz. Jest tak przydatne, że można je znaleźć w prawie każdej metodzie w Javie. A teraz poprowadzę cię do zrozumienia, dlaczego tak jest.
Metody z wynikiem,void
„Pewnie pamiętasz, że są zdania i są wyrażenia . Jaka jest między nimi różnica?”
„Jeśli się nie mylę, wyrażenie, w przeciwieństwie do stwierdzenia, ma znaczenie, które można gdzieś wykorzystać”.
„Zgadza się. A w Javie metody też mogą mieć wartość . I to jest bardzo dobra wiadomość: metody są w stanie nie tylko zrobić coś na podstawie parametrów wejściowych, ale też np. coś ocenić i zwrócić wynik obliczenie .
„Nawiasem mówiąc, spotkałeś się już z takimi metodami:
|
Metoda abs() zwraca podwójne |
|
Metoda nextInt() zwracaint |
|
Metoda toUpperCase() zwraca aString |
|
Metoda copyOf() zwracaint[] |
„Każda metoda może zwrócić tylko jedną wartość jednego z góry określonego typu . Zwracany typ jest określany, gdy metoda jest deklarowana:
public static Type name(parameters)
{
method body
}
Gdzie name
to nazwa metody, parameters
to lista parametrów metody i type
typ wyniku zwracanego przez metodę.
W przypadku metod, które nic nie zwracają, istnieje specjalny typ symbolu zastępczego: void
.
„Innymi słowy, jeśli napiszę swoją metodę i nie chcę niczego zwracać, to deklaruję typ metody jako void
, i to wszystko?”
„Tak. I muszę też powiedzieć, że Java ma całkiem sporo takich metod.
Zwracanie wyniku
„Zrozumiałem, jak zadeklarować metodę, która zwraca wynik obliczenia/pracy. Jak zwrócić wynik z samej metody?”
„To ważne pytanie. To return
stwierdzenie pomaga nam tutaj ponownie. Przekazywanie wyniku z metody wygląda następująco:
return value;
„ return
Instrukcja natychmiast zakończy działanie metody. I value
to jest to, co metoda powinna zwrócić do metody wywołującej po zakończeniu. Typ value
musi być zgodny z Type
określonym w deklaracji metody. Oto kilka przykładów potwierdzających to, czego się nauczyłeś:
Przykład 1. Metoda oblicza minimum z dwóch liczb:
|
Metoda zwraca minimum dwie liczby. Jeśli a < b powrót a W przeciwnym razie powrót b |
Przykład 2. Metoda duplikuje przekazany do niej łańcuch n
razy:
|
Metoda przyjmuje dwa parametry — łańcuch i liczbę powtórzeń ciągu. Dla przyszłego wyniku tworzony jest pusty łańcuch. W pętli z times iteracjami do łańcucha dodawana jest spacja i łańcuch str znaków result . Ciąg result jest zwracany jako wynik metody. |
Przykład 3: Metoda oblicza maksymalnie dwie liczby za pomocą operatora trójskładnikowego:
|
Metoda zwraca maksymalnie dwie liczby. powrót (jeśli a > b , to a , inaczej b ) |
„Wspaniale. Metody to moja nowa supermoc!”
„Tylko jeśli ćwiczysz wystarczająco dużo w zadaniach praktycznych. W kółko”.
GO TO FULL VERSION