Varia em rubi

Varia em rubi
Ranges estão por toda parte em nossa vida diária. Por exemplo, pode ser o tempo que levará para ler este artigo, a distância entre Moscou e Londres, o número de dias entre agora e Natal, etc.

Embora os intervalos possam ser implementados de maneira diferente em uma linguagem de programação, o conceito principal não difere.

Neste tutorial, aprenderemos a usar faixas na linguagem de programação do rubi.

O que é um intervalo?

O que é um intervalo, especificamente? Um intervalo é um conjunto de valores com ponto de partida e ponto final.

Na programação, um intervalo pode ser um conjunto de números, caracteres, cordas e outros objetos. A idéia geral é que um intervalo deve ter um início e fim.

Como criar um intervalo em rubi

A maneira mais simples de criar um intervalo no Ruby é usar notações de pontos. O exemplo a seguir ilustra como um intervalo funciona em Ruby:

para i em 1… 10
coloca i
fim

O exemplo acima deve retornar todos os itens de um intervalo de 1 a e incluindo 10.

Ruby usa notações de pontos para indicar a faixa de valores.

Dois pontos (…) são chamados de um intervalo inclusivo porque inclui o valor final nos itens. Por exemplo, 1… 10 começará de 1 até e incluindo 10.

Três pontos (…) são chamados de intervalo exclusivo porque não inclui o valor final no intervalo. Por exemplo, 1… 10 começa de 1 e termina em 9.

Sequências

A implementação básica de intervalos de rubi é gerar ou passar por uma sequência de valores. No exemplo anterior, usamos um intervalo dentro de um loop para gerar uma sequência de valores entre 1 e 10 (inclusive).

Também podemos usar o alcance para loop os itens em uma matriz, especialmente quando sabemos o total de itens.

Considere a matriz abaixo:

bancos de dados = ["mysql", "pósgresql", "redis", "mongodb", "Firestore"]

Para obter os itens da matriz, podemos usar os índices de itens, o que levaria a 5 peças repetitivas de código.

Podemos usar um intervalo como:

bancos de dados = ["mysql", "pósgresql", "redis", "mongodb", "Firestore"]
para eu em 0… 4
coloca bancos de dados [i]
fim

Embora a implementação acima não seja a maneira mais eficiente de fazer essa operação, é mais fácil de ler do que um monte de índices repetitivos.

É bom observar que os intervalos não se limitam apenas a valores inteiros. Podemos gerar todas as letras no alfabeto usando um intervalo simples.

coloca ('a'… 'z').to_a

O código acima gerará todos os caracteres entre A e Z e os colocará em uma matriz usando o método to_a.

Condicionais

As faixas também são implementáveis ​​em expressões condicionais. Por exemplo, suponha que queremos determinar se um valor está entre vários grupos de números.

Vamos pegar um número aleatório e perguntar: se o número entre 1 e 10, 20 e 30, 40 e 50, e tal.

Podemos implementar isso usando algumas linhas de código como:

aleatório = 34
correto = caso aleatório
Quando 1… 10, então "estou aqui"
Quando 11 ... 20 então "estou acima de 10"
Quando 21… 30, então "tente acima de 20"
Quando 31… 40, então "estou acima de 15 x 2"
Quando 41… 50, então "estou no meio!"
outro
coloca "Estou completamente perdido!"
fim
coloca correto

O código acima usa intervalos para verificar alguns suportes de alcance e avaliar se o valor aleatório está dentro.

Intervalos

A implementação final dos intervalos de rubi está testando se um valor está dentro de um intervalo de outros valores. É dificilmente distinguível de condicionais, mas usa operadores lógicos para avaliar.

Por exemplo:

if ((1… 10)) === 7
coloca "talvez verifique outros lugares"
elsif
coloca "eu poderia estar aqui"
fim

A implementação simples acima verifica se o valor 7 está dentro do intervalo de 1 e 10 e executa um código se verdadeiro.

Incluir e capa

Existem dois métodos que você pode usar ao trabalhar com Ruby Ranges. Estes são os incluídos e a capa.

O método de inclusão funciona verificando se um valor estiver no intervalo, enquanto a capa verifica o valor inicial e final do intervalo para uma correspondência.

coloca (1… 10).incluir? 10
coloca (1… 10).cobrir? 1

Fechamento

Neste guia rápido, discutimos o básico do uso de faixas em rubi. Embora exista mais, o conceito discutido neste tutorial deve ajudá -lo a entender os intervalos em Ruby. Para saber mais, confira a documentação oficial.