Compound Types
Semua materi merupakan rangkuman belajar.
Untuk bacaan yang lebih langkap & update, dipersilahkan akses pada
The Book
Seperti disebutkan sebelumnya, Compound Types merupakan kelompok dari beberapa nilai.
Dibagi menjadi 2:
- Tuple
- dapat menampung beberapa tipe data yang berbeda
- Array
- hanya dapat menampung tipe data sejenis
Persamaan dari 2 jenis Compound di atas adalah
sama-sama memiliki panjang yang pasti (tidak dapat dirubah)
Oke, langsung contoh
Tuple
fn main() {
// Deklarasi dengan tipe data
let nilai: (u8, f32, u8) = (80, 9.3, 77);
// Deklarasi tanpa tipe data
let nilai_b = ('A', 79, 9.3);
// Destructuring
let (x, y, z) = nilai;
println!("{}, {}, {}", x, y, z);
// Directly access element
let h = nilai_b.0;
println!("{}", h);
}
-
Tuple ditandai dengan tanda kurung
( )
. - Dapat dideklarasi dengan atau tanpa tipe data element-nya.
-
Mengambil nilai element dapat dilakukan dengan 2 cara
-
Destructuring
seperti saat deklarasi, akses pun menggunakan tanda kurung( )
.Perlu diperhatikan, akses nilai dengan destructuring
harus menyesaikan dengan panjang tuple-nya.Bila ada element yang tidak akan dipakai,
maka dapat menggunakan_
sebagai variable nya
fn main() { let nilai_b = ('A', 79, 9.3); let (h, _, _) = nilai_b; println!("{}", h); }
-
2. Directly access
dengan menggunakan `.`, dan index yang diawali dengan 0.
Array
Hanya satu tipe data dan panjangnya tidak dapat diubah.
fn main() {
// Deklarasi dengan tipe data
let nilai_matematika: [u8; 5] = [8, 4, 9, 8, 8];
// Deklarasi tanpa tipe data
let nilai_ipa = [8, 7, 5, 6, 5];
// Destructuring
let [_, kedua, _, keempat, _] = nilai_matematika;
println!("{}, {}", kedua, keempat);
// Directly access element
let ipa_kedua = nilai_ipa[1];
println!("{}", ipa_kedua);
}
-
Array ditandai dengan tanda kurung siku
[ ]
. -
Dapat dideklarasi dengan atau tanpe tipe data.
Saat menggunakan tipe datanya, yang ditulis adalah
[u8; 5]
tipe datanya (u8
) dan panjang array nya (5
),
dengan;
sebagai pemisah.Denga metode ini, kita juga dapat membuat array dengan panjang dan nilai yang sama,
contohnya,
let nilai_ips = [7; 5];
Hal ini sama dengan kita menulis
let nilai_ips = [7, 7, 7, 7, 7]
. -
Mengambil nilai element dapat dilakukan dengan 2 cara, sepertihalnya Tuple
-
Destructuring
dengan tanda akses nya[ ]
.Dan ketentuan error sepertihalnya Tuple.
Directly access
dengan menggunaan tanda[ ]
, dan index 0 sebagai awalnya.
-
Demikian Sesi Tipe Data.
Semoga bermanfaat, dan terima kasih.
Top comments (0)