Arrays & Slices

Duration: 15 min  •  Difficulty: Medium

Di Go, ada dua cara menyimpan kumpulan data: Array dan Slice. Apa bedanya?

1. Array (Jarang Dipakai)

Array memiliki ukuran tetap (fixed size). Jika Anda membuat array [5]int, Anda tidak bisa menambah elemen ke-6.

  • Kelebihan: Hemat memori, cepat.
  • Kekurangan: Tidak fleksibel.
  • 2. Slice (Sering Dipakai)

    Slice adalah "jendela" dinamis ke array. Ukurannya bisa berubah-ubah (bertambah atau berkurang).

  • Kelebihan: Sangat fleksibel.
  • Fungsi: append() untuk menambah data.
  • When to use?

    Hampir 99% kasus di Go, Anda akan menggunakan Slice. Gunakan Array hanya jika Anda tahu pasti jumlah datanya tidak akan pernah berubah (misal: Nama Hari ada 7).

    MAIN.GO
    package main
    import "fmt"
    func main() {
    // Array: Ukuran TETAP [2]
    var arr [2]int
    arr[0] = 100
    arr[1] = 200
    fmt.Println("Array:", arr)
    // Slice: Ukuran DINAMIS [] (kosong di dalam kurung siku)
    primes := []int{2, 3, 5, 7}
    fmt.Println("Slice Awal:", primes)
    // Menambah data baru ke slice dengan append
    primes = append(primes, 11)
    fmt.Println("Slice Baru:", primes)
    }