Slicing
Pelajaran 4 dari 21 dalam kursus Slice dan Map di Go di Coddy.
Mari kita dalami konsep slicing dan membahas ekspresi slice. Slicing berarti mengambil array atau slice asli lalu mempersempitnya. Agar lebih memahaminya, mari kita lihat beberapa contoh.
Misalkan kita memiliki slice seperti ini di Go:
arr := []string{"code", "coffee", "tea", "water"}Sekarang, katakanlah kita hanya ingin mengambil "code" dan "coffee" dari slice ini. Kita bisa melakukannya dengan slicing, seperti yang ditunjukkan di bawah ini:
newArr := arr[0:2]Sintaks untuk slicing adalah sebagai berikut: <strong>arr[start:stop]</strong>. Kita menentukan nama slice atau array yang ingin kita perkecil, lalu di dalam tanda kurung siku, kita memberikan posisi awal, diikuti titik dua, lalu posisi akhir.
Posisi awal harus berupa indeks elemen di dalam slice, dimulai dari nol.
Posisi akhir menunjukkan posisi elemen, bukan indeksnya, jadi dimulai dari 1.
Dalam contoh kita, kita mulai dari indeks 0 dan mengambil 2 elemen, yang ditulis sebagai <strong>arr[0:2]</strong>. Jika posisi awalnya 0, bagian itu bisa dihilangkan sehingga hasilnya tetap sama:
arr[:2]Ini mengambil elemen "code" dan "coffee" dari slice.
Kita bisa menentukan awal dan akhir slicing sesuai keinginan. Misalnya, jika kita ingin mengambil "coffee" dan "tea" dari slice, kita bisa melakukannya seperti ini:
arr := []string{"code", "coffee", "tea", "water"}
newArr := arr[1:3]
Tantangan
MudahDalam kode yang diberikan, kita mendefinisikan slice yang terdiri dari 6 elemen bertipe string. Gunakan slicing untuk mengambil nilai <strong>"apple"</strong> ,<strong>"orange"</strong> dan <strong>"banana"</strong> dari slice asli, lalu tampilkan di layar.
Coba sendiri
package main
import "fmt"
func main() {
// Slice fruits, jangan ubah ini!
fruits := []string{"pineapple", "kiwi", "apple", "orange", "banana", "grape", "kiwi"}
// Ambil sebagian dari slice fruits
// Tampilkan slice di layar
}Semua pelajaran di Slice dan Map di Go
Latihan sendiri: Compiler Go online