Welcome to day 7 of the 49 Days of Ruby! 🎉
Today we are going to discuss another important data type to know about as we begin our journey in Ruby. Today is all about the important Boolean.
What does Boolean mean?
The name Boolean comes from the English mathematician, George Boole. His seminal work The Laws of Thought gave rise to Boolean algebra. We won't get into too much math 😌, but basically, Boolean algebra is algebra where the values are either true or false.
As you can probably gather at this point if Boolean algebra is where the values are either true or false then a Boolean is a data type equalling either true or false.
Like many programming languages, Ruby offers you the ability to leverage Booleans in your code. Here is a quick example:
monday = true
if monday == true
puts "Today is the first day of the workweek, enjoy!"
end
In the example above we set the variable monday
to equal true
and then make a conditional statement based on that value. If monday
is true
then we output a string, and if not, we do nothing.
That example is a relatively straightforward use case, but it lays the groundwork for what kind of things you can do with Booleans.
🎓 Extra credit: What Class do Booleans belong to? You haven't learned about Classes yet. They are a way of organizing types of things together. For example, you might have a CatClass
for all types of cats. In many programming languages, there is a standard Boolean
type Class for Booleans. Not in Ruby!
To find out the Ruby Classes for Booleans go ahead and open up a session of IRB in your terminal:
irb> true.class
=> TrueClass
irb> false.class
=> FalseClass
That's right! There is not one class for Booleans, but two! The true
value belongs to TrueClass
and the false
value belongs to FalseClass
.
There are several implications for that. One of them, is you cannot just check if a thing is a Boolean, because it could be either TrueClass
or FalseClass
. We'll cover that more later when we get to Classes. 🎓
Besides true
and false
, what other things fall into the category of truthy
or falsy
?
When it comes to false
values, there is only false
itself or nil
.
There are more things that are truthy
though, here are some of them:
0
-
''
(empty string) -
[]
(empty array)
You can find more in this GitHub Gist.
How will you use Booleans in your Ruby journey? Continue experimenting in IRB and share what you learned in a blog post or on Twitter!
Come back tomorrow for the next installment of 49 Days of Ruby! You can join the conversation on Twitter with the hashtag #49daysofruby.
Top comments (0)