Mengiterasi dan Mengubah Irisan
Baca dan tulis melalui sebuah irisan.
Mengiterasi dan Mengubah Irisan adalah pelajaran Zig Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Zig Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Zig Academy mencakup 4 pelajaran total.
Menelusuri Slice
Setelah memiliki slice, biasanya Anda ingin mengunjungi setiap elemennya. Perulangan for Zig melakukan iterasi pada slice dengan rapi dari awal hingga akhir. 🔁
for pada Elemen
Letakkan slice di dalam tanda kurung dan beri nama setiap elemen dengan capture di antara tanda pipa. Perulangan memberikan satu nilai pada setiap iterasi.
for (items) |value| {
// use value
}Hanya Baca secara Default
Capture biasa memberi Anda salinan setiap elemen. Mengubah salinan tersebut tidak memengaruhi data yang mendasari slice.
Capture dengan Pointer untuk Mengubah Data
Tambahkan * sebelum nama capture untuk mendapatkan pointer, bukan salinan. Kini penulisan melaluinya akan mengubah elemen yang sebenarnya.
for (items) |*value| {
value.* += 1;
}Dereferensi untuk Menulis
Dengan capture pointer, gunakan .* untuk mengakses nilai yang ditunjuknya. Sintaks ini memungkinkan Anda membaca sekaligus menetapkan nilai.
value.* = 0;Slice Harus Dapat Diubah
Untuk mengubah elemen, tipe slice harus berupa []T biasa, bukan []const T. Slice const melarang penulisan melaluinya.
Melakukan Perulangan dengan Indeks
Pasangkan slice dengan rentang untuk mendapatkan penghitung juga. Capture kedua setelah koma adalah indeks saat ini.
for (items, 0..) |value, i| {
// i is the index
}Mengindeks Secara Langsung
Anda juga dapat menulis ke suatu slot berdasarkan indeks tanpa capture perulangan. Lakukan penetapan melalui tanda kurung siku seperti pada array.
items[0] = 42;Melakukan Iterasi pada Dua Slice Bersamaan
Teruskan beberapa slice ke satu perulangan for untuk menelusurinya secara bersamaan. Panjangnya harus sama, atau program akan mengalami kepanikan.
for (xs, ys) |x, y| {
// x and y line up
}Mengakumulasi Hasil
Simpan total berjalan dalam var yang dideklarasikan sebelum perulangan, lalu perbarui pada setiap iterasi untuk menghitung jumlah.
var total: i32 = 0;
for (items) |v| total += v;Melewati Iterasi dengan continue
Di dalam perulangan, continue langsung melompat ke elemen berikutnya. Gunakan ini untuk mengabaikan nilai yang gagal dalam uji singkat.
for (items) |v| {
if (v < 0) continue;
}Pemeriksaan Singkat
Anda ingin menggandakan setiap elemen slice []i32 secara langsung. Bentuk capture mana yang memungkinkan Anda menulis kembali nilainya?
Rangkuman
Lakukan perulangan pada slice dengan for: capture biasa membaca salinan, |*value| dengan .* mengubah data secara langsung, dan tambahkan rentang untuk melacak indeks. 🎯
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Mengiterasi dan Mengubah Irisan” gratis?
Ya — teks lengkap “Mengiterasi dan Mengubah Irisan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Zig Academy, upgrade ke CoddyKit PRO. Kursus Zig Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Mengiterasi dan Mengubah Irisan”?
Baca dan tulis melalui sebuah irisan. Kamu berlatih Zig Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Zig Academy?
Tidak diperlukan pengalaman sebelumnya. Zig Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Mengiterasi dan Mengubah Irisan” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Zig Academy ini?
Ya. Setiap pelajaran Zig Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Larik Berukuran Tetap
- Irisan: Penunjuk Ditambah Panjang
- Mengiris dengan array[start..end]
- Mengiterasi dan Mengubah Irisan