0Pricing
Ruby Academy · Aula

Verdadeiro e falso em Ruby

nil e false.

Verdadeiro e falso em Ruby é uma aula grátis de Ruby Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Ruby Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Ruby Academy inclui 4 aulas no total.

O que é veracidade?

Em uma condição, Ruby não exige um booleano estrito. Qualquer valor é tratado como verdadeiro ou falso. Conhecer essa regra evita erros sutis.

if "hello"
  puts "Strings are truthy"
end

Apenas dois valores falsos

A regra do Ruby é surpreendentemente simples: apenas false e nil são falsos. Todo o resto é verdadeiro.

puts "nil is falsy" unless nil
puts "false is falsy" unless false

Zero é verdadeiro

Ao contrário de muitas linguagens, 0 é verdadeiro no Ruby. Uma cadeia de caracteres vazia e um vetor vazio também são. Tenha cuidado se você veio do C ou do Python.

if 0
  puts "0 is truthy in Ruby"
end
if ""
  puts "empty string is truthy too"
end

Conheça nil

nil representa a ausência de um valor. Os métodos geralmente retornam nil quando não há nada para devolver, como no caso de uma chave ausente em um hash.

user = { name: "Ada" }
puts user[:email].inspect  # missing key returns nil

Verificando nil

Use nil? para testar explicitamente. Ele retorna true somente para nil.

x = nil
y = 0
puts x.nil?
puts y.nil?

O operador &&

&& retorna o primeiro operando falso ou o último operando se todos forem verdadeiros. Ele faz curto-circuito: o lado direito não é avaliado se o lado esquerdo for falso.

puts (nil && "never").inspect
puts ("a" && "b").inspect

O operador ||

|| retorna o primeiro operando verdadeiro. Isso o torna perfeito para valores padrão.

name = nil
display = name || "Guest"
puts display

Atribuição condicional ||=

a ||= b atribui b a a somente se a for atualmente nil ou false. Essa é a maneira idiomática de definir um valor padrão.

config = {}
config[:timeout] ||= 30
config[:timeout] ||= 99  # already set, ignored
puts config[:timeout]

Cuidado com o padrão falso

Como false é falso, || pode substituir um valor legítimo false. Quando false tem significado, verifique nil? em vez disso.

enabled = false
result = enabled || true   # oops, becomes true
puts result
safe = enabled.nil? ? true : enabled
puts safe

O operador de navegação segura

&. chama um método somente se o receptor não for nil; caso contrário, retorna nil em vez de gerar um erro.

name = nil
puts name&.upcase.inspect  # no NoMethodError
name = "ruby"
puts name&.upcase

Juntando tudo

As regras de veracidade permitem escrever código expressivo e compacto, mas tenha em mente os casos extremos:

  • Apenas nil e false são falsos.
  • 0, "" e [] são todos verdadeiros.
  • Use nil? quando um false real for importante.
values = [0, "", [], nil, false]
values.each do |v|
  puts "#{v.inspect} => #{v ? "truthy" : "falsy"}"
end

Verificação rápida

Teste sua compreensão da veracidade no Ruby.

Recapitulação

Você aprendeu sobre veracidade no Ruby:

  • Apenas nil e false são falsos.
  • nil? verifica explicitamente se o valor é nil.
  • && e || retornam operandos e fazem curto-circuito.
  • ||= define valores padrão; &. protege contra receptores nil.
username = nil
username ||= "anonymous"
puts "Welcome, #{username}"

Perguntas Frequentes

A aula “Verdadeiro e falso em Ruby” é grátis?

Sim — o texto completo de “Verdadeiro e falso em Ruby” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Ruby Academy, atualize para CoddyKit PRO. O curso de Ruby Academy inclui 4 aulas no total.

O que vou aprender em “Verdadeiro e falso em Ruby”?

nil e false. Você pratica Ruby Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Ruby Academy?

Nenhuma experiência prévia é necessária. Ruby Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Verdadeiro e falso em Ruby”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Ruby Academy?

Sim. Cada aula de Ruby Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. if, unless e ternário
  2. Expressões case/when
  3. Verdadeiro e falso em Ruby
  4. Cláusulas de guarda
← Voltar para Ruby Academy