Metode enumerate
Termasuk bagian Dasar-Dasar dalam perjalanan Swift di Coddy. Pelajaran 70 dari 86.
Terkadang saat melakukan iterasi pada array, kamu perlu mengetahui bukan hanya elemennya, tetapi juga posisinya. Kamu bisa melacak indeks secara manual dengan variabel penghitung, tetapi Swift menyediakan solusi yang lebih rapi: method enumerated().
Saat kamu memanggil enumerated() pada array, fungsi itu mengembalikan urutan tuple, dengan setiap tuple berisi indeks dan elemennya:
let colors = ["Red", "Green", "Blue"]
for (index, color) in colors.enumerated() {
print("\(index): \(color)")
}
// 0: Red
// 1: Green
// 2: BluePerhatikan bagaimana kita memecah setiap tuple secara langsung dalam perulangan menggunakan (index, color). Dengan begitu, kita bisa mengakses kedua nilai tanpa kode tambahan.
Ini sangat berguna saat kamu perlu menampilkan daftar bernomor atau melakukan operasi yang bergantung pada posisi suatu elemen:
let tasks = ["Wake up", "Exercise", "Eat breakfast"]
for (index, task) in tasks.enumerated() {
print("Task \(index + 1): \(task)")
}
// Tugas 1: Bangun tidur
// Tugas 2: Berolahraga
// Tugas 3: SarapanDibandingkan mengelola variabel penghitung terpisah secara manual, method enumerated() membuat kodemu tetap rapi dan mudah dibaca.
Tantangan
Mudah Tulis sebuah fungsi formatWithPositions yang menerima items dan mengembalikan string berformat yang menampilkan setiap item beserta nomor posisinya.
Gunakan method enumerated() untuk melakukan iterasi pada array dan menyusun string dengan nomor posisi berbasis 1 di awal setiap item.
Logika:
- Lakukan iterasi pada array menggunakan
enumerated() - Untuk setiap elemen, buat string dengan format
"position. item"(menggunakan penomoran berbasis 1) - Gabungkan semua string berformat dengan karakter baris baru (
\n)
Parameter:
items([String]): Array string yang akan diformat
Nilai kembalian: Satu string dengan setiap item pada barisnya sendiri, diawali nomor posisinya (String). Format: "1. item1\n2. item2\n3. item3"
Contoh: Jika items adalah ["Apple", "Banana", "Cherry"], fungsi akan mengembalikan:
"1. Apple\n2. Banana\n3. Cherry"Catatan: Jika array kosong, kembalikan string kosong "".
Coba sendiri
func formatWithPositions(items: [String]) -> String {
// Tulis kodemu di sini
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator, Bagian 1
Operator AritmetikaOperator ModuloPenugasan MajemukRangkuman: Matematika SederhanaOperator Perbandingan7Dasar input/output
Fungsi printInterpolasi stringInput ReadLineKonversi tipe dataUlasan: Hingga 120Ulasan: Benar atau Salah10Fungsi
Deklarasikan FungsiParameter dan ArgumenNilai KembalianLabel ArgumenRangkuman: Fungsi SigmaRangkuman: Fungsi ValidasiNilai Default13Perulangan pada Urutan
Perulangan pada ElemenMetode enumeratePerulangan pada string P1Perulangan pada string P25Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Ringkasan: Logika SederhanaOperator Logika Bagian 3Operator Ternary8Kalkulator Pembagi Tagihan
Pesan SambutanMengambil Input3Optional
Apa Itu OptionalMengambil Nilai dari Optional dengan If LetGuard LetOperator Nil CoalescingRingkasan, Mengambil Nilai dari Optional dengan Aman6Pengambilan Keputusan
Pernyataan IfIf - ElseUlasan: Kalkulator SederhanaPernyataan SwitchSwitch dengan Rentang9Perulangan
For-In LoopWhile LoopRepeat-While LoopBreakContinueRingkasan: FaktorialRentang dalam LoopLoop BersarangRingkasan: Input DinamisLatihan sendiri: Playground Swift