0Pricing
Ruby Academy · Pelajaran

Dasar-Dasar case/in

Pencocokan struktural.

Dasar-Dasar case/in adalah pelajaran Ruby Academy gratis di CoddyKit. Ini adalah pelajaran 1 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 Ruby Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Ruby Academy mencakup 4 pelajaran total.

Pencocokan Pola Diperkenalkan

Ekspresi Ruby case/in melakukan pencocokan pola struktural: ekspresi ini menguji bentuk dan isi data, bukan hanya kesamaan. Ini merupakan peningkatan yang kuat dibandingkan case/when.

case 42
in Integer
  puts 'it is an integer'
end

case/in dibanding case/when

case/when membandingkan dengan === (berdasarkan kesamaan). case/in menguraikan nilai dan dapat mengikat variabel. Gunakan in untuk mencocokkan struktur.

case 'hello'
in String => s
  puts "string of length #{s.length}"
end

Mencocokkan Literal

Sebuah cabang in dapat mencocokkan nilai literal, seperti pemeriksaan kesamaan yang tepat.

case 3
in 1 then puts 'one'
in 3 then puts 'three'
in _ then puts 'other'
end

Pola Tipe

Menamai sebuah kelas akan mencocokkan nilai apa pun dari tipe tersebut, dengan memanfaatkan === secara internal.

def describe(x)
  case x
  in Integer then 'number'
  in String then 'text'
  in Array then 'list'
  end
end
puts(describe([1, 2]))

Mengikat Variabel

Pengenal tunggal dalam pola mengikat nilai yang cocok ke variabel baru yang dapat Anda gunakan di dalam cabang.

case [1, 2]
in [a, b]
  puts(a + b)
end

Karakter Pengganti

Garis bawah _ mencocokkan apa pun tanpa melakukan pengikatan. Gunakan ini sebagai pencocok umum atau untuk mengabaikan posisi tertentu.

case 99
in 0 then puts 'zero'
in _ then puts 'something else'
end

Operator Penyematan

Untuk mencocokkan nilai variabel yang sudah ada (alih-alih mengikat variabel baru), sematkan variabel tersebut dengan ^.

expected = 5
case 5
in ^expected
  puts 'matched the pinned value'
end

Pola Alternatif

Gabungkan pola dengan | untuk mencocokkan salah satu dari beberapa alternatif dalam satu cabang.

case 'b'
in 'a' | 'b' | 'c'
  puts 'in the first three letters'
end

Mengikat Seluruh Hasil Pencocokan

Gunakan pattern => name untuk menguji suatu pola dan sekaligus mengikat nilai yang cocok ke sebuah nama.

case 'Ruby'
in String => word
  puts(word.upcase)
end

NoMatchingPatternError

Jika tidak ada cabang in yang cocok dan tidak ada else, Ruby memunculkan NoMatchingPatternError. Tambahkan else untuk menangani sisanya dengan aman.

case 10
in 1 then puts 'one'
else
  puts 'no specific match'
end

Pencocokan Satu Baris

Operator => melakukan pencocokan penetapan ke kanan dalam satu baris dan memunculkan kesalahan jika gagal. Sebaliknya, operator in mengembalikan true/false.

result = [1, 2] in [Integer, Integer]
puts result

Pemeriksaan Singkat

Apa yang terjadi jika case/in tidak memiliki cabang yang cocok dan tidak memiliki else?

Ringkasan: Dasar-Dasar case/in

Anda telah mempelajari dasar-dasar pencocokan struktural:

  • case/in mencocokkan bentuk, bukan hanya kesamaan
  • Literal, pola tipe, dan karakter pengganti _
  • Pengikatan variabel dan operator penyematan ^
  • Alternatif dengan | dan pattern => name
  • Ketidakadaan hasil cocok memunculkan NoMatchingPatternError
case 7
in Integer => n then puts(n * 2)
end

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Dasar-Dasar case/in” gratis?

Ya — teks lengkap “Dasar-Dasar case/in” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Ruby Academy, upgrade ke CoddyKit PRO. Kursus Ruby Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Dasar-Dasar case/in”?

Pencocokan struktural. Kamu berlatih Ruby 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 Ruby Academy?

Tidak diperlukan pengalaman sebelumnya. Ruby 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 1 dari 4.

Berapa lama pelajaran “Dasar-Dasar case/in” 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 Ruby Academy ini?

Ya. Setiap pelajaran Ruby 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

  1. Dasar-Dasar case/in
  2. Pola Array dan Hash
  3. Pola Find dan Guard
  4. Kasus Penggunaan Praktis
← Kembali ke Ruby Academy