![gambar](/img/lang/OCaml.png)
Tuple Pada OCaml
Record tanpa nama
Tipe data dengan banyak nilai.
Desember 20, 2020
Tipe data majemuk yaitu tipe data yang menampung banyak jumlah nilai. List dalam bahasa indonesia disebut Senarai.
Tipe data tunggal seperti int
,bool
,float
atau record buatan hanya menampung satu buah nilai. List merupakan salah satu tipe data majemuk.
List bekerja dengan prinsip antrean dari kiri ke kanan, mengambil data dari paling kiri dan menambahkan nilai dari paling kanan.
Nilai paling kiri disebut sebagai head
dari List. Nilai setelah head
disebut tail
.
Berikut aturan pembangkitan List
[ <nilai> ; <nilai> ; <nilai> ];;
List mengunakan sepasang kurung siku []
untuk dibangkitkan.
Berikut penerapan List dalam daftar album lagu
let album_eshen = ["For Sis";"Say Hi"];;
Penulis dengan tipe langsung
let album_eshen: string list = ["For Sis";"Say Hi"];;
List dapat menambahkan dengan operator ::
,operator ini menghasilkan list yang telah ditambah dan tidak menimpah nilai list sebelumnya.
let album_eshen = ["For Sis";"Say Hi"];;
"Earlier Than Today" :: album_eshen;;
(* ["Earlier Than Today";"For Sis";"Say Hi"] *)
List dapat di gabung dengan List lain (concatination) mengunakan operator @
, operator ini menghasilkan gabungan dari List.
let album_eshen = ["For Sis";"Say Hi"];;
let album_tatsh = ["Daylight";"from RestedPoint"];;
album_eshen @ album_tatsh;;
(* ["For Sis";"Say Hi";"Daylight";"from RestedPoint"] *)
List memiliki head dan tail untuk mengambilnya dapat mengunakan List.hd
dan List.tl
.
let album_eshen = ["Earlier Than Today";"For Sis";"Say Hi"];;
List.hd album_eshen;;
(* "Earlier Than Today" *)
List.tl album_eshen;;
(* ["For Sis";"Say Hi"] *)
List dapat diketahui isinya menggunakan List.length
.
let album_eshen = ["For Sis";"Say Hi"];;
List.length album_eshen;;
(* 2 *)
Membaca keseluruhan List untuk keperluan ekspresi, dapat menggunakan List.iter
dan lambda.
List.iter (fun a -> print_endline (a ^ " - Eshen")) ["For Sis";"Say Hi"];;
(*
For Sis - Eshen
Say Hi - Eshen
*)
Memetakan isi List dan mengembalikan nilai hasil ekspresi dalam List, dapat menggunakan List.map
dan lambda.
List.map (fun a -> (a ^ " - Eshen")) ["For Sis";"Say Hi"];;
(* ["For Sis - Eshen"; "Say Hi - Eshen"] *)
Blog ini tidak dibiayai oleh iklan untuk bayar server dan jajan milkshake. Agar tetap terus beroperasi dan menorehkan lebih banyak tulisan yang (semoga) bermanfaat!
Beri sedikit tips ke Loka Kode untuk bayar server dan beli milkshake.
Record tanpa nama
Array merupakan tipe data majemuk dengan ukuran tetap.
Fungsi tanpa nama.