Yukarı Çık

Kotlin Temelleri 6 (Fonksiyonlar)

31 Mayıs 2022   0 Yorum

Kodları bir arada tutan ve farklı amaçlara göre yönetmeyi sağlayan yapılardır. Yazdığımız programda aynı amaca yönelik işlem yapan kod bloklarını fonksiyon içine alıp kod fazlalığından kurtulabiliriz. 

Fonksiyonlar  matematikte olduğu gibi yazılımda da parametre alabilir. Örnek olarak f(x,y)=2x+y fonksiyonumuz olsun x=2 için ve y=1 için fonksiyonun değerini bulalım. f(2,1)=2.2 + 1 sonucumuz 5 çıktı. Yazılımda da aynı şekilde fonksiyonlar parametre alıp bize bir çıktı verir. 

Şimdi Kotlin'de fonksiyon tanımlamaya bakalım;

fun yaziDondur(){
   println("Kotlin öğreniyorum.")
}

yaziDondur()

Yukarıdaki kod bloğunda fun ile bir fonksiyon yazdığımızı belirttik ve fonksiyonumuzun ismini yaziDondur olarak belirttik. Bu fonksiyon parametre almıyor. Çünkü fonksiyon ismimizden sonraki parantezimizin içi boş. Bu yüzden fonksiyonumuzun parametre almayan bir fonksiyon olduğunu anlayabiliyoruz. Ayrıca biz bu fonksiyonu çağırmazsak konsol ekranında bir çıktı göremeyiz. Kod bloğunun en altında fonksiyonu çağırdık ve ekranımıza "Kotlin öğreniyorum." yazısını bastırdı.

 

Parametre Alan Fonksiyonlar

fun toplama(x:Int,y:Int){
    println("Sayıların toplamı: ${x+y}")
}

toplama(10,5)

Parametre alan fonksiyonun tanımını yapmıştık. Kod bloğumuza baktığımızda oluşturduğumuz toplama adlı fonksiyonumuz 2 adet Int tipinde parametre alıyor. Aldığı parametreleri toplayıp ekrana bastırıyor. Kod bloğunun alt kısmında toplama fonksiyonunu çağırıyoruz ve içine iki adet sayı giriyoruz. Girdiğimiz sayılar yukarıdaki toplama fonksiyona gidiyor ve adım adım bu fonksiyon içindeki işlemleri yapıyor. 

 

Değer Döndüren Fonksiyonlar

Her zaman yukarıdaki kodlarda yaptığımız gibi ekrana sonucu bastırmayabiliriz. Fonksiyon içindeki değeri bazı durumlarda fonksiyon dışında bir değişkene almak isteyebiliriz. Bu gibi durumlarda değer döndüren fonksiyonlar oluşturmalıyız. Örnek vermek gerekirse yukarıdaki toplama fonksiyonundan dönen değer ile 3. tanımladığımız değişkendeki değere bölmek istiyoruz. Bunu koda dökelim;

fun toplama(x:Int,y:Int): Int{
    return x+y
}

var z=3
var sonuc=0

sonuc=toplama(10,5)/z
println(sonuc)

Yukarıda değer döndüren bir fonksiyon tanımladık ve bunun Int tipinde değer döndürdüğünü yazdık. Daha sonra return anahtar kelimesiyle x+y nin değerini döndürdük. Return anahtar kelimesini kullanmasaydık hata alacaktık. Çünkü geri döndürme işlemlerini return ile yapıyoruz. 

 

 


0 Yorum