true, false, și nil sunt tipuri speciale de date încorporate în Ruby. Fiecare dintre aceste cuvinte cheie evaluează un obiect care este singura instanță a clasei sale respective.

true.class
 => TrueClass
false.class
 => FalseClass
nil.class
 => NilClass

true și false sunt valorile booleene native ale lui Ruby. O valoare booleană este o valoare care poate fi doar una dintre cele două valori posibile: adevărat sau nu adevărat. Obiectul true reprezintă adevărul, în timp ce false reprezintă opusul. Puteți atribui variabile către true / false, treceți-le la metode și, în general, folosiți-le așa cum ați face cu alte obiecte (cum ar fi numerele, șirurile, matricile, hashurile)

nil este o valoare specială care indică absența unei valori – este modul lui Ruby de a se referi la „nimic”. Un exemplu de când veți întâlni nil obiectul este atunci când cereți ceva care nu există sau nu poate fi găsit:

hats = ["beret", "sombrero", "beanie", "fez", "flatcap"]

hats[0]
 => "beret" # the hat at index 0
hats[2]
 => "beanie" # the hat at index 2
hats[4]
 => "flatcap" # the hat at index 4
hats[5]
 => nil # there is no hat at index 5, index 5 holds nothing (nil)

Zero nu este nimic (este un număr, care este ceva). La fel, șirurile, matricile și hashurile goale nu sunt nimic (sunt obiecte care se întâmplă să fie goale). Puteți apela metoda nil? pentru a verifica dacă un obiect este nul.

0.nil?
 => false
"".nil?
 => false
[].nil?
 => false
{}.nil?
 => false
nil.nil?
 => true
 # from the example above
hats[5].nil?
 => true

Fiecare obiect din Ruby are o valoare booleană, ceea ce înseamnă că este considerat adevărat sau fals într-un context boolean. Cele considerate adevărate în acest context sunt „adevărate”, iar cele considerate false sunt „false”. În Ruby, numai false și nil sunt „fals”, orice altceva este „adevărat”.

Mai multe informatii:

  • Learning Ruby: De la zero la erou
  • Idiomatic Ruby: scrierea unui cod frumos
  • Cum se exportă un tabel de baze de date în CSV utilizând un script Ruby simplu