BogoToBogo
  • Home
  • About
  • Big Data
  • Machine Learning
  • AngularJS
  • Python
  • C++
  • go
  • DevOps
  • Kubernetes
  • Algorithms
  • More...
    • Qt 5
    • Linux
    • FFmpeg
    • Matlab
    • Django 1.8
    • Ruby On Rails
    • HTML5 & CSS

Ruby - Condition (if), Operators (comparison/logical) & case statement 2020

RubyOnRails_logo




Bookmark and Share





bogotobogo.com site search:




if-elsif-else-end

Let's learn how to use conditional statement in Ruby:

#!/usr/bin/ruby
# r9.rb
# if - elsif - else - end

age = 12

if (age <= 2)
  puts "You're a baby"
elsif (age > 2 ) && (age < 12 )
  puts "You're a kid"
else
  puts "You're almost there"
end

Output:

$ ./r9.rb
You're almost there





Comparison operators

Here are the common operators in Ruby.

==, !=, > , <, =>, <=

Other comparison operators are:

Operator Description Example
<=> Combined comparison operator. Returns 0 if first operand equals second, 1 if first operand is greater than the second and -1 if first operand is less than the second. (10 <=> 20) returns -1
=== Used to test equality within a when clause of a case statement.. (1...10) === 5 returns true
.eql? True if the receiver and argument have both the same type and equal values. 1 == 1.0 returns true, but 1.eql?(1.0) is false
equal? True if the receiver and argument have the same object id. a=10, b=20: if aObj is duplicate of bObj then aObj == bObj is true, a.equal?bObj is false but a.equal?aObj is true.

Another comparison operator, unless. It is just if in reverse. It's a conditional statement that executes only if the condition is false:

#!/usr/bin/ruby
# r10.rb
# comparison operators : unless

age = 12
unless age > 5
   puts "No school"
else
   puts "Go to school"
end

Output:

$ ./r10.rb
Go to school




Logical operators
#!/usr/bin/ruby
# r11.rb
# logical operators

puts "true && false = " + (true && false).to_s
puts "true || false = " + (true || false).to_s
puts "!true = " + (!true).to_s

Output:

$ ./r11.rb
true && false = false
true || false = true
!true = false




case
#!/usr/bin/ruby
# r12.rb
# case statement

number = gets.chomp  # remove a new line
case number
when "one", "uno"
   puts "1"
   exit
when "two", "dos"
   puts "2"
   exit
else
   puts "too big"
end

Output:

$ ./r12.rb
dos
2
k@laptop:~/TEST/RUBY$ ./r12.rb
10
too big




Ternary condition
#!/usr/bin/ruby
# r13.rb
# ternary condition

age = 86

puts (age >= 70? "old" : "still young")

Output:

$ ./r13.rb
old








Ph.D. / Golden Gate Ave, San Francisco / Seoul National Univ / Carnegie Mellon / UC Berkeley / DevOps / Deep Learning / Visualization

YouTubeMy YouTube channel

Sponsor Open Source development activities and free contents for everyone.

Thank you.

- K Hong






Sponsor Open Source development activities and free contents for everyone.

Thank you.

- K Hong







Ruby on Rails



Ruby On Rails Home

Ruby - Input/Output, Objects, Load

Ruby - Condition (if), Operators (comparison/logical) & case statement

Ruby - loop, while, until, for, each, (..)

Ruby - Functions

Ruby - Exceptions (raise/rescue)

Ruby - Strings (single quote vs double quote, multiline string - EOM, concatenation, substring, include, index, strip, justification, chop, chomp, split)

Ruby - Class and Instance Variables

Ruby - Class and Instance Variables II

Ruby - Modules

Ruby - Iterator : each

Ruby - Symbols (:)

Ruby - Hashes (aka associative arrays, maps, or dictionaries)

Ruby - Arrays

Ruby - Enumerables

Ruby - Filess

Ruby - code blocks and yield

Rails - Embedded Ruby (ERb) and Rails html

Rails - Partial template

Rails - HTML Helpers (link_to, imag_tag, and form_for)

Layouts and Rendering I - yield, content_for, content_for?

Layouts and Rendering II - asset tag helpers, stylesheet_link_tag, javascript_include_tag

Rails Project

Rails - Hello World

Rails - MVC and ActionController

Rails - Parameters (hash, array, JSON, routing, and strong parameter)

Filters and controller actions - before_action, skip_before_action

The simplest app - Rails default page on a Shared Host

Redmine Install on a Shared Host

Git and BitBucket

Deploying Rails 4 to Heroku

Scaffold: A quickest way of building a blog with posts and comments

Databases and migration

Active Record

Microblog 1

Microblog 2

Microblog 3 (Users resource)

Microblog 4 (Microposts resource I)

Microblog 5 (Microposts resource II)

Simple_app I - rails html pages

Simple_app II - TDD (Home/Help page)

Simple_app III - TDD (About page)

Simple_app IV - TDD (Dynamic Pages)

Simple_app V - TDD (Dynamic Pages - Embedded Ruby)

Simple_app VI - TDD (Dynamic Pages - Embedded Ruby, Layouts)

App : Facebook and Twitter Authentication using Omniauth oauth2

Authentication and sending confirmation email using Devise

Adding custom fields to Devise User model and Customization

Devise Customization 2. views/users

Rails Heroku Deploy - Authentication and sending confirmation email using Devise

Deploying a Rails 4 app on CentOS 7 production server with Apache and Passenger I

Deploying a Rails 4 app on CentOS 7 production server with Apache and Passenger II

OOPS! Deploying a Rails 4 app on CentOS 7 production server with Apache and Passenger (Trouble shooting)











Contact

BogoToBogo
contactus@bogotobogo.com

Follow Bogotobogo

About Us

contactus@bogotobogo.com

YouTubeMy YouTube channel
Pacific Ave, San Francisco, CA 94115

Pacific Ave, San Francisco, CA 94115

Copyright © 2024, bogotobogo
Design: Web Master