Panduan Lengkap tentang range
dalam Go untuk Pemula
Hai, para pemrogram yang sedang belajar! Hari ini, kita akan memulai perjalanan yang menarik ke dalam dunia pemrograman Go, khususnya fokus pada kata kunci range
. Sebagai guru ilmu komputer yang ramah di lingkungan sekitar Anda, saya disini untuk mengorbit Anda melalui konsep ini dengan banyak contoh dan penjelasan. Jadi, ambil minumannya yang favorit, nyamanlah, dan mari kita masuk ke dalamnya!
Apa itu Range?
Sebelum kita mulai mengoding, mari kita pahami apa itu range
. Dalam Go, range
adalah seperti seorang panduan magis untuk struktur data Anda. Itu membantu Anda untuk mengulang berbagai jenis data, termasuk array, slice, map, string, dan channel. Pikirkan itu seperti pisau Swiss Army untuk mengulang melalui koleksi data.
Sintaksis Range
Sintaksis dasar range
sangat sederhana:
for index, value := range collection {
// Kode Anda disini
}
Di sini, index
memberikan Anda posisi elemen, dan value
memberikan Anda elemen itu sendiri. Tetapi jangan khawatir jika ini terlihat abstrak saat ini - kita akan melihat banyak contoh segera!
Range dengan Array dan Slice
Mari kita mulai dengan contoh sederhana menggunakan array:
package main
import "fmt"
func main() {
fruits := [3]string{"apple", "banana", "cherry"}
for index, fruit := range fruits {
fmt.Printf("Index: %d, Fruit: %s\n", index, fruit)
}
}
Ketika Anda menjalankan kode ini, Anda akan melihat:
Index: 0, Fruit: apple
Index: 1, Fruit: banana
Index: 2, Fruit: cherry
Apa yang terjadi disini? Kata kunci range
membantu kita mengulang melalui array fruits
. Untuk setiap iterasi, itu memberikan kita indeks dan nilai (nama buah) di indeks itu.
Menggunakan Hanya Indeks
kadang-kadang, Anda mungkin hanya memerlukan indeks. Dalam kasus itu, Anda dapat mengabaikan variabel nilai:
for index := range fruits {
fmt.Printf("Index: %d\n", index)
}
Menggunakan Hanya Nilai
Atau mungkin Anda hanya peduli dengan nilai dan tidak peduli dengan indeks. Anda dapat menggunakan identifier kosong _
untuk mengabaikan indeks:
for _, fruit := range fruits {
fmt.Printf("Fruit: %s\n", fruit)
}
Range dengan Maps
Map dalam Go seperti kotak harta karun penuh dengan pasangan kunci-nilai. Mari kita lihat bagaimana range
bekerja dengan mereka:
package main
import "fmt"
func main() {
ages := map[string]int{
"Alice": 25,
"Bob": 30,
"Charlie": 35,
}
for name, age := range ages {
fmt.Printf("%s is %d years old\n", name, age)
}
}
Output:
Alice is 25 years old
Bob is 30 years old
Charlie is 35 years old
Di sini, range
memberikan kita keduanya kunci (nama) dan nilai (umur) untuk setiap entri dalam map.
Range dengan Strings
String dalam Go adalah urutan byte, dan range
dapat membantu kita mengulang melalui mereka:
package main
import "fmt"
func main() {
message := "Hello, 世界"
for index, runeValue := range message {
fmt.Printf("Index: %d, Character: %c, Unicode: %U\n", index, runeValue, runeValue)
}
}
Contoh ini menunjukkan bagaimana range
menangani karakter multi-byte (seperti dalam Cina) dengan benar.
Range dengan Channels
Channel adalah fitur unik dalam Go untuk komunikasi antara goroutine. Ini adalah bagaimana range
bekerja dengan channel:
package main
import "fmt"
func main() {
ch := make(chan int)
go func() {
ch <- 1
ch <- 2
ch <- 3
close(ch)
}()
for num := range ch {
fmt.Println(num)
}
}
Dalam contoh ini, range
terus menerima nilai dari channel sampai itu ditutup.
Metode Range Umum
Berikut adalah tabel yang menggabungkan cara umum untuk menggunakan range
:
Tipe Data | Sintaksis | Deskripsi |
---|---|---|
Array/Slice | for index, value := range array |
Mengulang setiap elemen, menyediakan indeks dan nilai |
Map | for key, value := range map |
Mengulang setiap pasangan kunci-nilai |
String | for index, runeValue := range string |
Mengulang setiap kode poin Unicode |
Channel | for value := range channel |
Menerima nilai dari channel sampai ditutup |
Kesimpulan
Dan begitu saja, teman-teman! Kita telah melakukan perjalanan besar tentang kata kunci range
dalam Go. Dari array ke map, string ke channel, range
adalah teman andalan Anda untuk mengulang melalui struktur data dalam Go.
Ingat, latihan membuat sempurna. Cobalah menulis program Anda sendiri menggunakan range
dengan jenis data yang berbeda. eksperimen,buat kesalahan, dan belajar dari mereka. Itulah cara terbaik untuk menjadi mahir dalam pemrograman.
Sebelum saya tutup, ini adalah sedikit humor pemrograman: Mengapa pemrogram memilih mode gelap? Karena cahaya menarik nyamuk! ?
Selamat coding, dan may the range
be with you!
Credits: Image by storyset