Intervalos em Ruby (Range)

Intervalos são um tipo de dados especial em Ruby que representa uma sequência de valores. Eles são uma ferramenta poderosa para iterar uma série de valores e gerar arrays.

Criando intervalos: Link to heading

  • Eles são declarados usando dois pontos (..) entre dois valores.
  • O primeiro valor é o limite inferior do intervalo.
  • O segundo valor é o limite superior do intervalo.
  • A gama inclui ambos os limites.

Exemplo: Link to heading

(1..6) # Faixa de 1 a 6 inclusive

Conversão para matrizes: Link to heading

  • Eles podem ser convertidos em arrays usando o método to_a.
  • Isso pode ser útil para trabalhar com valores de intervalo em outras estruturas de dados.

Exemplo: Link to heading

(1..6).to_a # => [1, 2, 3, 4, 5, 6]

Gamas exclusivas: Link to heading

  • Faixas exclusivas podem ser criadas usando três pontos (…).
  • O intervalo não inclui o limite superior.

Exemplo: Link to heading

(1...6) # Faixa de 1 a 5 (não incluindo 6)

Intervalos com letras: Link to heading

Os intervalos podem ser criados com letras ou qualquer outro caractere.

Exemplo: Link to heading

("a".."z").to_a # => ["a", "b", "c", ..., "y", "z"]

Iteração em intervalos: Link to heading

each pode ser usado para iterar sobre os valores do intervalo.

Exemplo: Link to heading

(1..6).each do |x|
    puts x
end

Operações com intervalos: Link to heading

  • Operações matemáticas podem ser realizadas com intervalos.
  • O resultado será um novo intervalo com os valores modificados.

Exemplo: Link to heading

(1..6) + 5 # => (6..11)

Em resumo, os intervalos são uma ferramenta versátil para trabalhar com sequências de valores em Ruby. A sua simplicidade e eficiência fazem deles uma parte fundamental da linguagem.

Continue aprendendo sobre as faixas para aproveitar ao máximo seus benefícios em seus programas!

Dicas adicionais: Link to heading

  • Você pode usar o operador & para cruzar dois intervalos.
  • Você pode usar o operador | para juntar dois intervalos.
  • Você pode usar o método include? para verificar se um valor está dentro de um intervalo.

Exemplo: Link to heading

(1..5) & (3..7) # => (3..5)
(1..5) | (3..7) # => (1..7)
(1..5).include?(3) # => true

Continue experimentando faixas para criar programas mais eficientes e expressivos!

<< Ciclos em Ruby Expressões regulares em Ruby >>