DEV Community

Aydın Yakar
Aydın Yakar

Posted on

Golang 101: Range

Dizi, Kesit ve Harita verilerinden indis, anahtar ve değer çekmek için for döngüsü ile birlikte range kullanılır.

package main

import "fmt"

func main() {

    // Kesitteki Sayıları Toplama
    kesit := []int{1, 2, 3, 4}
    toplam := 0
    for _, sayi := range kesit {
        toplam += sayi
    }
    fmt.Println("Toplam:", toplam)

    // Değerin Indis'ini Bulmak
    for indis, deger := range kesit {
        if deger == 3 {
            fmt.Println("Indis:", indis)
        }
    }

    // Harita'dan Anahtar/Değer Alma
    iller := map[string]string{"m": "mersin", "a": "antalya"}
    for k, v := range iller {
        fmt.Printf("%s -> %s\n", k, v)
    }

    // Sadece Anahtar Verisin Almak
    for k := range iller {
        fmt.Println("Anahtar:", k)
    }
}
Enter fullscreen mode Exit fullscreen mode
Toplam: 10
Indis: 2
m -> mersin
a -> antalya
Anahtar: m
Anahtar: a
Enter fullscreen mode Exit fullscreen mode

çalıştır!

Kesitteki Sayıları Toplama

    kesit := []int{1, 2, 3, 4}
    toplam := 0
    for _, sayi := range kesit {
        toplam += sayi
    }
    fmt.Println("Toplam:", toplam)
Enter fullscreen mode Exit fullscreen mode

Kesitteki sayıları range ile her döngü de sırayla indis (_) ve deger (sayi) atamalarını yaparak toplamını buluyoruz. Indis numarasına ihtiyacımız olmadığı için _ boş tanımlayıcı (blank identifier) kullandık.

Değerin Indis'ini Bulmak

    for indis, deger := range kesit {
        if deger == 3 {
            fmt.Println("Indis:", indis)
        }
    }
Enter fullscreen mode Exit fullscreen mode

Değeri 3 olan değişkenin indis değerini bulup yazdırıyoruz.

Harita'dan Anahtar/Değer Alma

    iller := map[string]string{"m": "mersin", "a": "antalya"}
    for k, v := range iller {
        fmt.Printf("%s -> %s\n", k, v)
    }
Enter fullscreen mode Exit fullscreen mode

Harita dizisinden anahtar ve değeri ekrana yazdırıyoruz.

Anahtar Verisi Almak

    for k := range iller {
        fmt.Println("Anahtar:", k)
    }
Enter fullscreen mode Exit fullscreen mode

Range ile tek değişken verildiğinde map'tan anahtar verisi dönmektedir.

Discussion (0)