Codegym Üniversitesi kursunun bir parçası olarak bir akıl hocası ile bir ders parçası. Tüm kurs için kaydolun.
"Yine sen, Amigo. Merhaba."
"Beni gördüğüne pek sevinmemiş gibisin, Diego?"
"Java yöntemleri hakkında bilinmesi gereken her şeyi zaten öğrendiğini düşündüğün izlenimine kapıldım."
"Ah, ben..."
"Sanmıyorum! Daha yarısını bile bilmiyorsun."
"Tabii, kızmıyorum...
"Tamam, yeterince konuştuk. Başlama zamanı. Ve basit bir şeyle başlayacağız. Örneğin, Java'nın bir dönüş ifadesi olduğu gerçeği. Bu, çağrıldığı bir yöntemi anında sonlandırmanıza olanak tanır. İşte ifade:
return;
"Çok basit: noktalı virgülle takip edilen tek sözcük return
. Program bu ifadeyi çalıştırır çalıştırmaz, geçerli yöntemden çıkar ve çağıran yöntem devam eder.
" return
Yöntemde çağrılırsa main
, yöntem main
ve onunla birlikte tüm program hemen sona erecektir.
Örnek:
|
Yöntem fill , geçirilen dizinin bir bölümünü value . Dizinin doldurulacak kısmı from ve indeksleri ile tanımlanır to . Dizinin uzunluğundan küçükse veya büyükse , yöntem hemen sonlandırılır. from 0 to |
"Yukarıdaki programın fill
kendisine iletilen diziyi ile dolduran bir yöntemi var value
. Dizinin tamamını değil, sadece from
ve indekslerinin belirttiği kısmı dolduruyor to
.
"Yöntemin başlangıcında fill
, iletilen değerlerin geçerli olduklarından emin olmak için kontrol edilir. from
0'dan küçükse veya to
dizinin uzunluğundan büyükse, yöntem fill
hemen sonlandırılır (bir return
ifade yürütür)."
"Anladım. Tüm bu açıklamanın yaptığı bu mu?"
"Aslında return
deyim sandığınızdan daha kullanışlı. O kadar kullanışlı ki Java'daki hemen hemen her yöntemde bulunuyor. Şimdi bunun neden böyle olduğunu anlamanıza yardımcı olacağım.
Sonuç veren yöntemler,void
"Muhtemelen ifadelerin olduğunu ve ifadelerin olduğunu hatırlıyorsunuzdur . Aralarındaki fark nedir?"
"Yanılmıyorsam, bir ifade, bir ifadeden farklı olarak, bir yerde kullanılabilecek bir anlama sahiptir."
"Doğru. Ayrıca, Java'da yöntemlerin de bir değeri olabilir. Ve bu çok iyi bir haber: yöntemler yalnızca girdi parametrelerine dayalı olarak bir şeyler yapmakla kalmaz, aynı zamanda, örneğin, bir şeyi değerlendirmek ve sonucu döndürmek için de kullanılabilir . hesaplama _
"Bu arada, zaten bu tür yöntemlerle karşılaştınız:
|
Yöntem abs() bir çift döndürür |
|
Yöntem nextInt() bir döndürürint |
|
Yöntem toUpperCase() bir döndürürString |
|
Yöntem copyOf() bir döndürürint[] |
"Her yöntem önceden belirlenmiş bir türden yalnızca bir değer döndürebilir . Dönüş türü, yöntem bildirildiğinde belirlenir:
public static Type name(parameters)
{
method body
}
name
Yöntemin adı nerede , parameters
yöntem parametrelerinin listesi ve type
yöntemin döndürdüğü sonucun türü.
Hiçbir şey döndürmeyen yöntemler için özel bir yer tutucu türü vardır: void
.
"Başka bir deyişle, yöntemimi yazarsam ve hiçbir şey döndürmek istemezsem, yöntemin türünü be olarak bildiririm void
ve bu kadar mı?"
"Evet. Ayrıca Java'nın buna benzer pek çok yöntemi olduğunu da söylemeliyim.
sonuç döndürme
"Bir hesaplamanın/çalışmanın sonucunu döndüren bir yöntemi nasıl ilan edeceğimi buldum. Sonucu yöntemin kendisinden nasıl döndürürüm?"
"Bu geçerli bir soru. return
İfade burada bir kez daha bize yardımcı oluyor. Bir yöntemden sonuç iletmek şuna benzer:
return value;
" return
Açıklama, yöntemi hemen sonlandırır. Ve value
yöntemin, çağrı yönteminden çıktığı zaman geri dönmesi gereken şeydir. türünün, yöntem bildiriminde belirtilenle value
eşleşmesi gerekir Type
. İşte öğrendiklerinizi pekiştirmek için bazı örnekler:
Örnek 1. Yöntem, iki sayının minimumunu hesaplar:
|
Yöntem, iki sayının en azını döndürür. İade edilirse Aksi takdirde iade a < b a b |
Örnek 2. Yöntem, kendisine iletilen dizeyi n
iki kez çoğaltır:
|
Yöntem iki parametre alır — bir dize ve dizenin tekrarlanma sayısı. Gelecekteki sonuç için boş bir dize oluşturulur. Yinelemeli bir döngüde times , str dizeye bir boşluk ve dize eklenir result . Dize, result yöntemin sonucu olarak döndürülür. |
Örnek 3: Yöntem, üçlü işleci kullanarak maksimum iki sayıyı hesaplar:
|
Yöntem, maksimum iki sayı döndürür. dönüş (eğer a > b , sonra a , aksi takdirde b ) |
"Mükemmel. Yöntemler benim yeni süper gücüm!"
"Yalnızca uygulamalı görevlerde yeterince pratik yaparsan. Tekrar tekrar."
GO TO FULL VERSION