Nesta aula iremos aprender os condicionais do Ruby, (if, else, elsif, than, case, when, unless, ternário). Veremos também como e quando utilizá-los.
Aula de hoje:
Acesso o irb
para testar alguns códigos
Se a
for igual a 2 ele executa uma instrução, senão ele
pula para o próximo bloco.
> if a == 2
Se a
for igual a 2 ele executa uma instrução, senão ele
pula para o próximo bloco.
> if a == 2
Se a
não for igual a 2 ele não entra
> unless a == 2
Tanto no if
quanto no unless
, usa-se a mesma
estrutura de else
e end
, e os parênteses
opcionais.
> if (a == 2)
Dependendo do caso é melhor utilizar o case
ao invés do
if
, para evitar o encadeamento de consecutivos "ifs".
> a = 3
case a
when 3
puts "oi"
when 4
puts "2"
else
puts "8"
end
Se 1 for igual a 1 a variável a
passa a ter o valor
"oi"
, senão será "ola"
> a = 1 == 1 ? "oi" : "ola"
Para acompanhar a aula prática você pode copiar a pastar de exercícios da aula anterior como o professor fez.
Você pode configurar o seu RVM como 2.3.3 no .rvmrc
para acompanhar as aulas como foi ensinado nas
aulas passadas.
Agora criaremos um arquivo .rb
, lembrando de criar o arquivo Gemfile com o
source 'https://rubygems.org'
e gem 'byebug'
require 'byebug'
debugger
Exemplo if, elsif, else
require 'byebug'
debugger
a = 2
if 1 == 1
puts"o a e igual a 1"
elsif a == 3
puts "o a não é igual ao 1"
else
puts "o a não é igual ao 1"
end
Exemplo unless
unless a == 1
puts "o a é diferente de 1"
Diferença if e unless
unless a == 1
puts "o a é diferente de 1"
Exemplo Ternário
debugger
a = a == 3 ? 50 : 40
puts "O valor final de a com o ternário é de: #{a}"
Arquiteto de software, analista, programador, professor. Danilo criou o projeto torne-se um programador, para passar o seu conhecimento para a nova geração. Com o intuito de ser um bom pai, Danilo trabalha muito motivado para garantir o futuro de sua filha.