1. return
operatoru
Düşünürsünüz ki, artıq Java metodları haqqında hər şeyi öyrənmisiniz? Elə deyil, siz hələ yarısını belə bilmirsiniz.
Gəlin nədənsə sadədən başlayaq. Məsələn, Java-da return əmri (operatoru) var ki, bu, çağırıldığı metodu dərhal dayandırmağa imkan verir. Əmr belə görünür:
return;
Hamısı: sadəcə bir söz return
və nöqtə-vergül. Proqram bu əmri icra edər-etməz, cari metodun işi dərhal sona çatır və çağırılan metodun işi davam edir.
Əgər return
əsas metodda (main
) çağırılsa, main
metodu dərhal sona çatar və onunla bərabər bütün proqram da dayanar.
Nümunə:
|
Metod fill ötürülən array-in bir hissəsini value qiyməti ilə doldurur.Array-in hissəsi indekslərə görə müəyyən edilir: from və to .Əgər from 0 -dan kiçikdirsə və ya to array-in uzunluğundan böyükdürsə, metod dərhal sona çatar. |
Yuxarıdakı proqramda fill
metodu var ki, ona ötürülən array-i müəyyən qiymətlə doldurur value
. Amma tam array yox, yalnız from
və to
indekslərinə görə təyin olunmuş hissəsini doldurur.
fill
metodunun əvvəlində yoxlanılır ki, ötürülən qiymətlər düzgündürmü. Əgər from
0-dan kiçikdirsə və ya to
array-in uzunluğundan böyükdürsə, fill
metodu dərhal dayandırılır (return
əmri çağırılır).
Bu return
operatoru çox faydalıdır: Java-dakı demək olar ki, hər bir metodda var və niyə belə olduğunu artıq bildiniz.
2. Nəticə ilə funksiyalar, void
Yadınızdadırsa, əvvəllər danışmışdıq ki, komanda və ifadələr anlayışları var. İfadələr komandadan fərqli olaraq hansısa bir mənaya malikdir və həmin mənanı başqa bir yerdə istifadə etmək olar.
Bax belə bir şey var ki, Java-da metodların mənası ola bilər. Bu çox yaxşı xəbərdir: metodlar parametrlərə əsasən nəsə etməkdən başqa, nəsə hesablaya və bu hesablamanın nəticəsini qaytara bilərlər.
Əslində, siz belə metodlarla artıq tanışsınız:
|
Metod abs() double tipində bir qiymət qaytarır |
|
Metod nextInt() int tipində bir qiymət qaytarır |
|
Metod toUpperCase() String tipində bir qiymət qaytarır |
|
Metod copyOf() int[] tipində bir qiymət qaytarır |
Hər bir metod yalnız bir qiymət və əvvəlcədən təyin olunmuş bir tip qaytara bilər. Metodun qaytardığı qiymətin tipi metodun elanında göstərilir:
public static tip ad(parametrlər)
{
metodun kodu
}
Burada ad
— metodun adı, parametrlər
— metodun parametrlərin siyahısı, və tip
— metodun qaytardığı nəticənin tipi.
Heç bir nəticəni qaytarmayan metodlar üçün xüsusi bir görünməz tip var — void
.
Öz metodunuzu yazırsınız və çağırış edən metod üçün heç nə qaytarmaq istəmirsiniz? Sadəcə metodun tipini void
elan edin və məsələ həll oldu. Java-da belə metodlar kifayət qədər çoxdur.
3. Nəticənin qaytarılması
Hesablama/metodun işi nəticəsi olan metodu necə elan etmək barədə artıq danışdıq, bəs bu nəticəni metoddan necə qaytarmaq olar?
Bunun üçün bizə yenidən return
operatoru lazım olacaq. Metoddan nəticənin ötürülməsi belə görsənəcək:
return dəyər;
Burada return
— operatorudur ki, metodun işini dərhal dayandırır. Və dəyər
— metodun çağıran metoda qaytarmalı olduğu nəticədir. dəyər
-in tipi mütləq metodu elan edərkən göstərilmiş tip
ilə uyğun olmalıdır.
Nümunə 1. Metod iki ədədin minimumunu hesablayır:
|
Metod iki ədədin minimumunu qaytarır. Əgər a < b qaytar a Əks halda qaytar b |
Nümunə 2. Metod ötürülən string-i n
dəfə təkrarlayır:
|
Metod iki parametr qəbul edir — string və onun təkrarlanma sayı. Gələcək nəticə üçün boş string yaradılır. Dövrdə times dəfəresult string-ə boşluq və str string əlavə olunur.Nəticə olaraq metod result dəyişənini qaytarır. |
Nümunə 3: Metod iki ədədin maksimumunu ternar operatoru ilə hesablayır:
|
Metod iki ədədin maksimumunu qaytarır. qaytar (əgər a > b , onda a , əks halda b ) |
GO TO FULL VERSION