Nilai Kebenaran di Ruby
nil dan false.
Nilai Kebenaran di Ruby adalah pelajaran Ruby Academy gratis di CoddyKit. Ini adalah pelajaran 3 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.
Apa Itu Nilai Benar?
Dalam sebuah kondisi, Ruby tidak memerlukan boolean yang ketat. Nilai apa pun diperlakukan sebagai bernilai benar atau bernilai salah. Mengetahui aturan ini membantu mencegah bug yang sulit terlihat.
if "hello"
puts "Strings are truthy"
endHanya Dua Nilai Bernilai Salah
Aturan Ruby sangat sederhana: hanya false dan nil yang bernilai salah. Semua nilai lainnya bernilai benar.
puts "nil is falsy" unless nil
puts "false is falsy" unless falseNol Bernilai Benar
Tidak seperti banyak bahasa lain, 0 bernilai benar di Ruby. String kosong dan larik kosong juga demikian. Waspadalah jika Anda sebelumnya menggunakan C atau Python.
if 0
puts "0 is truthy in Ruby"
end
if ""
puts "empty string is truthy too"
endMengenal nil
nil menyatakan ketiadaan nilai. Metode sering mengembalikan nil ketika tidak ada yang dapat dikembalikan, misalnya saat kunci hash tidak ditemukan.
user = { name: "Ada" }
puts user[:email].inspect # missing key returns nilMemeriksa nil
Gunakan nil? untuk mengujinya secara eksplisit. Kode ini hanya mengembalikan true untuk nil.
x = nil
y = 0
puts x.nil?
puts y.nil?Operator &&
&& mengembalikan operan pertama yang bernilai salah, atau operan terakhir jika semuanya bernilai benar. Operator ini menggunakan evaluasi hubung singkat: sisi kanan tidak dievaluasi jika sisi kiri bernilai salah.
puts (nil && "never").inspect
puts ("a" && "b").inspectOperator ||
|| mengembalikan operan pertama yang bernilai benar. Karena itu, operator ini sangat cocok untuk nilai bawaan.
name = nil
display = name || "Guest"
puts displayPenetapan Kondisional ||=
a ||= b menetapkan b ke a hanya jika a saat ini bernilai nil atau false. Inilah cara idiomatis untuk menetapkan nilai bawaan.
config = {}
config[:timeout] ||= 30
config[:timeout] ||= 99 # already set, ignored
puts config[:timeout]Waspadai Nilai Bawaan yang Salah
Karena false bernilai salah, || dapat menimpa nilai false yang sah. Jika false memiliki arti penting, gunakan nil? sebagai gantinya.
enabled = false
result = enabled || true # oops, becomes true
puts result
safe = enabled.nil? ? true : enabled
puts safeOperator Navigasi Aman
&. memanggil metode hanya jika objek penerimanya bukan nil; jika tidak, operator ini mengembalikan nil alih-alih menimbulkan kesalahan.
name = nil
puts name&.upcase.inspect # no NoMethodError
name = "ruby"
puts name&.upcaseMenggabungkan Semuanya
Aturan nilai benar atau salah memungkinkan Anda menulis kode yang ekspresif dan ringkas, tetapi tetap perhatikan kasus khususnya:
- Hanya
nildanfalseyang bernilai salah. 0,"", dan[]semuanya bernilai benar.- Gunakan
nil?ketika nilaifalseyang sebenarnya memiliki arti penting.
values = [0, "", [], nil, false]
values.each do |v|
puts "#{v.inspect} => #{v ? "truthy" : "falsy"}"
endPemeriksaan Cepat
Uji pemahaman Anda tentang nilai benar atau salah di Ruby.
Rangkuman
Anda telah mempelajari nilai benar atau salah di Ruby:
- Hanya
nildanfalseyang bernilai salah. nil?memeriksa nil secara eksplisit.&&dan||mengembalikan operan serta menggunakan evaluasi hubung singkat.||=menetapkan nilai bawaan;&.melindungi dari objek penerima yang nil.
username = nil
username ||= "anonymous"
puts "Welcome, #{username}"Pertanyaan yang Sering Diajukan
Apakah pelajaran “Nilai Kebenaran di Ruby” gratis?
Ya — teks lengkap “Nilai Kebenaran di Ruby” 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 “Nilai Kebenaran di Ruby”?
nil dan false. 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 3 dari 4.
Berapa lama pelajaran “Nilai Kebenaran di Ruby” 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
- if, unless, ternary
- Ekspresi case/when
- Nilai Kebenaran di Ruby
- Klausa Penjaga