(Java) Alt Programlar: Prosedürler ve İşlevler - 2


İşlev, bir sonuç (sayı, karakter dizisi vb.) döndüren bir alt programdır

Bir çevrimiçi mağazadan bir ürün sipariş ettiğinizi düşünün. Programlama açısından, belirli bir alt programı çağırdınız ve bir prosedürden farklı olarak, bu alt programın bir sonuç döndürmesi gerekir - sipariş ettiğiniz ürünü teslim edin. Bu alt programlara işlevler denir.
Bir işlev, prosedürle tam olarak aynı şekilde biçimlendirilir. Bir prosedürden tek fark, özel bir operatörün dönüşvarlığıdır; bundan sonra ana programa döndürülecek değer yazılı.

İki tamsayının aritmetik ortalamasını döndüren bir işlev şöyle görünür: statik kayan nokta ortalaması(int a, int b) { float ortalama = (a + b) / 2.; ağustos dönüşü; } Ana programda bu işlevin nasıl çağrılacağını anlamak kalır:
Bir işlevi, bir yordamı çağırdığınız şekilde çağırmamalısınız: ortalama(10, 5); İşlev tarafından döndürülen değer kaybolacaktır. Sanki çevrimiçi mağazadaki mallar kimseye verilmemiş, atılmış gibidir. Müşterinin beğenmesi pek olası değil.

Sonucu bir değişkene kaydetmek (veya ekrana yazdırmak) daha doğrudur: a = ortalama(10, 5); System.out.println(ortalama(10, 5));

Genellikle programcılar true veya false (trueveya false) boolean değerleri döndüren boolean işlevleri kullanırlar
Bu tür işlevler   bazı özellikleri kontrol edin.
Bir sayının eşitliğini kontrol eden mantıksal bir fonksiyon yazmaya ilişkin iki örneği ele alalım.
Ve işlevler ve prosedürlerle çalışmayla ilgili son not: programdaki işlev ve prosedürlerin sayısı sınırlı değildir. Ayrıca, bir alt program başka bir alt programı ve hatta kendisini çağırabilir.
 

1)  Daha iyi yol:
ifade sonucu
n % 2 == 0
doğru (Doğru) veya yanlış (Yanlış) olacaktır
Koşullu bir ifade yazmaya gerek yok!
2) Bunu yapma!
Bu şekilde yazabilirsiniz, ancak yine de daha uzun bir kayıt yapmamak daha iyidir
statik Boole isEven(int n)
{
    dönüş (n % 2 == 0);
}
statik Boole isEven(int n)
{
    eğer (n % 2 == 0)
        doğru dönüş;
    başka
        yanlış dönüş;
}