case/when Expressions
Multi-way branching.
Multi-way Branching
When you compare one value against many possibilities, a long if/elsif chain gets noisy. Ruby's case expression makes multi-way branching clean and readable.
day = "Mon"
case day
when "Sat", "Sun"
puts "Weekend"
else
puts "Weekday"
endBasic case / when
The value after case is compared to each when in order. The first match runs, then control jumps to end.
grade = "B"
case grade
when "A"
puts "Excellent"
when "B"
puts "Good"
when "C"
puts "Okay"
endAll lessons in this course
- if, unless, ternary
- case/when Expressions
- Truthiness in Ruby
- Guard Clauses