Scala 2 - Scala Giriş

Merhabalar,

Şimdi Scalayı genel yapısını tanıycaz daha sonra derinlemesine dalıcaz. İlk olarak şu fonksiyonları söyleyim.Ekrana yazdırmayı print veya println ile yapabiliriz. Açıklama satırlarını // veya /* */ ile oluşturabiliriz.

Değişken Tanımlama

Scala'da değişken tanımlamak için bir çok yöntem var. İlk olarak

val değişken_adı = "cem"

dediğimizde değişken_adı adında bi değişken tanımladık ve değerini cem yapmış olduk.

İkinci olarak

val değişken_adı :String = "cem"  diyerek tanımlıyoruz. Fakat burda ":String" ifadesiyle değişkenin tipini belirtiyoruz.Sizde şunu deneyin

val değişken_adı :String = 12

sonucu görün.

Üçüncü olarakta

val değişken_adı  :java.lang.String = "cem" olarakta tanımlayabiliyoruz.İkinciyle aynı.

Fonksiyon Tanımlama
    def max(x: Int, y: Int): Float = {
      if (x > y) x
      else y
    }
   
Şimdi bu fonksiyonun yapsını açıklayalım.Burda def ile maxDeger adında bi fonksiyon oluşturcağımızı söyledik ve iki parametre belirttik Int tipinde ve sonrada :Float = { diyip sonucun ne tipte olcağını söyledik. Float dediğimiz için virgüllü sayı şeklinde sonuc vericek.Int deseydik tam sayı şeklinde. String dersek nolcağını siz deneyin.Ve ya x'in tipini Float yapın deneyin.(Virgüllü Sayılar Scala'da virgül ile değil nokta ile belirtilir.Yani (1.2) şeklinde mesela) Sonrada fonksiyon içinde if kullanıp koşula göre çıktı vermesini sağladık. Fonksiyonu nası kullanırız derseniz fonksiyonun hemen altında println(max(11,4)) diyin ve çalıştırın.

Örnek kullanım:
def max(x: Float, y: Int): Double = {
      if (x > y) x
      else y
    }

println(max(1.2F,2)) 

Burda 1.2F diye belirtmemizin sebebi Float tipinde olduğunu belirtmek için "F" yazdık 1.2F  şeklinde.Yazmazsak hata verir Double tipinde algıladığı için.Array(Dizi) Tanımlama Arrayleri'de bir çok şekilde oluşturabiliriz. Mesela

val array_adı = new Array[String](eleman_sayısı) şeklinde oluşturabilceğimiz gibi
val array_adı : Array[String] = new Array[String](eleman_sayısı) şeklindede oluşturabiliriz.

Örnek kullanım-1:

val programlamaDili :Array[String] = new Array[String](4)
programlamaDili(0) = "Java"
programlamaDili(1) = "Scala"
programlamaDili(2) = "Ruby"
programlamaDili(3) = "Lisp"
for (i <- 0 to 3)
 print(programlamaDili(i))


Şimdi burda naptık açıklayalım.Önce arrayimizi tanımladık burda problem yok.Sonrada arrayimizin elemanlarını tanımladık.Yani programlamaDili(0) diyerek Dizinin ilk elamanını kullancagımızı belirttik ve bunun değerinin "Java" olcağını söyledik.Bi de burda şunu söyleyelim (4) diyerek eleman sayısını belirtiyoruz dedik fakat dizilerde eleman sırası 0 ile başlar.Yani birinci elemana programlamaDili(0) diyerek ulaştık 3üncü elemanaysa programlamaDili(2) diyerek.

Sonrada for döngüsü oluşturduk ve bu for döngüsünde i diye bi değişken tanımladık."<-" operatörlerinin burdaki anlamıysa ; sol tarafında değiken , sağ tarafındaysa arancak değişkenler için diyebiliriz.Biraz karışık oldu ama yani burda bunu i'yi arrayimizdeki 0'ıncı elemandan 3üncü elemana kadar tara gibisinden bişey.Umarım yanlış ifade etmiyorum.0 to 3 'te 0'dan 3'e kadar anlamında.Burda peki neden 0 to 3 yerine "programlamaDili" diyerek arrayimizin adını yazmadık.Çünkü elemanları indexlerine göre yazdırcagımız için Int tipinde olmak zorunda diyelim.Daha sonrada ztn elemanları yazdırdık

print(programlamaDili(i))

diyerek.Sizde 0 to 3 değilde 3 to 4 deneyin veya 1 to 3 deneyin sonuçları görün.Bunu bu şekilde kullanabilceğimiz gibi istersekte;

val programlamaDili :Array[String] = new Array[String](4)
programlamaDili.update(0,"Java")
programlamaDili.update(1,"Scala")
programlamaDili.update(2,"Ruby")
programlamaDili.update(3,"Lisp")
for (i <- 0 to 3)
  println(programlamaDili.apply(i))    //Bu şekildede kullanabiliriz.

Son olarak istersek'te Arrayleri şu şekildede oluşturabiliriz :
val sayilar = Array(1,2,3,4,5)

/*

Direkt sayilar diye bi değişken tanımladık ve bunu Array(1,2,3,4,5) diyerek 5 elemanlı bi Array olduğunu tanımladık.Burda Array tipini belirtmiyoruz çünkü sayı girdiğimiziçin otomatik olarak Int tipinde algıladı.

*/

val sayilar = Array(1,2,3,4,5)

println(programlamaDili(2)) // burda tahmin etceğiniz gibi (1,2,3,4,5) arasından 2'yi yazdır demiyoruz. 2inci sıradaki elemanı yazdır dıyoruz.

Tarih:
Hit: 2913
Yazar: dyrnade



Yorumlar


Siftahı yapan siz olun
Yorum yapabilmek için üye girişi yapmalısınız.