Conditionals
The most common control structure, in any programming language, is
the conditional. This is a way
of telling the computer to conditionally execute some code: to execute
it only if some condition is satisfied. The condition is an
expression—if it evaluates to any value other than false
or nil
, then the condition is satisfied.
Ruby has a rich vocabulary for expressing conditionals. The syntax choices are described in the subsections that follow. When writing Ruby code, you can choose the one that seems most elegant for the task at hand.
if
The most straightforward of the conditionals is if
. In its simplest form, it looks like
this:
ifexpression
code
end
The code
between if
and end
is executed if (and only if) the
expression
evaluates to something other
than false
or nil
. The code
must be separated from the expression
with
a newline or semicolon or the keyword then
.[5] Here are two ways to write the same simple
conditional:
# If x is less than 10, increment it if x < 10 # newline separator x += 1 end if x < 10 then x += 1 end # then separator
You can also use then
as the
separator token, and follow it with a newline. Doing so makes your
code robust; it will work even if the newline is subsequently
removed:
if x < 10 then x += 1 end
Programmers who are used to C, or languages whose syntax is
derived from C, should note two important things about Ruby’s if
statement:
Parentheses are not required (and typically not used) around the conditional expression. The newline, semicolon, ...
Get The Ruby Programming Language now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.