Slice pada bahasa pemrograman golang. Sebelumnya kita telah mempelajari mengenai Array dalam bahasa pemrograman golang. Nah, Slice ini tidak jauh berbeda dengan array. Perbedaannya ialah slice bersifat dinamis, dia bisa memanjang sesuai dengan isi element.
Pada dasarnya Slice mereferensikan elemen pada array. Karena bertipe reference, maka apabila kamu merubah isi slice maka data slice dengan alamat memory sama akan berubah juga.
Mendeklarasikan Slice
Cara mendeklarasikan slice mirip dengan deklarasi array, yaitu dengan memberi nama pada slice yang menampung tipe data dan element tertentu.
var slice = []int{1,2,3,4,5}
Jika kita menggunakan slice, maka tidak perlu lagi mendeklarasikan panjang element. Kamu dengan bebas mengisinya.
Cara memanggil isi dari slice juga sama dengan array, kamu bisa menggunakan for loop untuk melakukannya.
Selain dengan For Loop kamu juga dapat memanggil element slice menggunakan titik dua ( : ), contoh :
fmt.Println(slice[0:4])
kode diatas berfungsi untuk menampilkan element dari slice dengan index 0 hingga index 4
Mengenal reference pada Slice
Sebelumnya kita telah sedikit menyinggung mengenai Slice bertipe reference. Artinya jika kita membuat slice dan memasukan element kedalamnya, kemudian kita membuat lagi slice untuk mereferensikan slice lama. Jika kamu merubah data melalui slice baru data slice lama juga ikut berubah, karena memiliki alamat memory yang sama.

Operasi Slice pada Golang
Perbedaan Slice dan Array yang menonjol adalah bahwa slice mempunyai beberapa operasi yang berfungsi untuk mengelola element yang ada didalam slice.
Berikut beberapa operasi pada slice :
- append()
- copy()
append()
Fungsi append pada slice digunakan untuk menambah element pada slice. Elemen baru akan di posisikan di index yang terakhir. Berikut cara penggunaan append pada slice.

copy()
Copy pada slice berfungsi untuk menyalin element slice ke slice yang lain. contoh :

Pada kode diatas terlihat bahwa element slcAsal, berubah menjadi 4,5,6 yang mana 4,5,6 ini berasal dari slcMaudiCopy
Mungkin cukup sekian penjelasan singkat mengenai slice pada golang. Bagaimana menurutmu mengenai slice ini, ceritakan dikolom komentar ya.