Slices

Slices

Tipe data lainnya yang tidak memiliki ownership adalah slice, Slices memberikan kemudahan untuk mereferensi terhadap urutan data yang berdekatan dalam sebuah koleksi data.

String Slices

String slice adalah referensi kepada bagian dari String, sehingga penggunaan slices menggunakan references syntax seperti ini &[..].

fn main() {
let name = String::from("Hello Word");
println!("{}", &name[0..2]); // He
}

Kode di atas sama seperti mereferensi ke seluruh koleksi data pada String yang mana nilainya adalah “Hello World”, dan kemudian mengambil posisi index dari setiap huruf yang tersusun, huruf “H” posisinya berada index 0, dan index 2 adalah huruf “e”, sehingga hasil keluarannya adalah “He”.

Penggunaan slice dapat dengan menggunakan brackets seperti ini [start_index..last_index] posisi awal diawali dengan start_index, dan di akhir slice adalah last_index.