Menu
CoddyTech

Slice vs array

Pelajaran 2 dari 21 dalam kursus Slice dan Map di Go di Coddy.

Dalam bahasa pemrograman lain, kita sering menemukan array dinamis. Di Go, array ini disebut slice, yang memungkinkan kita menambahkan atau menghapus elemen secara dinamis. Namun, penting untuk diketahui bahwa slice itu sendiri tidak menyimpan elemen, melainkan berfungsi sebagai jendela ke array.

Sekarang, mari kita pelajari perbedaan antara slice dan array melalui sebuah contoh. Perhatikan array dengan tiga elemen:

arr := [3]string{"Python", "Go", "Rust"}

Seperti yang kita ketahui, array adalah tipe koleksi dengan ukuran tetap, sehingga elemen tidak dapat ditambahkan. Jika kita mencoba menambahkan elemen baru, error akan muncul.

Di sinilah slice mengatasi keterbatasan ini. Mari kita pahami melalui sebuah contoh:

var books = []string{"SQL", "Java", "C++"}

Seperti yang kamu lihat, kita mendefinisikan slice <strong>books</strong> dengan cara yang sama seperti array biasa, dengan satu-satunya perbedaan bahwa kita tidak mendefinisikan panjangnya.

Ini memungkinkan kita menambahkan atau menghapus elemen secara dinamis saat program berjalan, sesuatu yang tidak mungkin dilakukan dengan array.

Mengakses elemen dalam slice mirip dengan mengakses elemen dalam array, yaitu menggunakan indeks:

fmt.Println(books[1]) // Java

Di Go, slice memberikan fleksibilitas saat bekerja dengan koleksi karena memungkinkan perubahan dinamis, berbeda dengan array yang memiliki struktur tetap.

challenge icon

Tantangan

Mudah
  • Definisikan slice dengan elemen berikut secara berurutan: "Learn Go", "Learn Python", "Learn Java", "Coddy.tech".
  • Cetak "Learn Go" dan "Coddy.tech" ke layar menggunakan indeks.
  • Kamu bisa menamai slice sesuai keinginanmu.

 

Coba sendiri

package main

import (
	"fmt"
)

func main() {
    // Tulis kodemu di sini
    
}

Semua pelajaran di Slice dan Map di Go

Latihan sendiri: Compiler Go online