O operador de turno de esquerda binário em Ruby

O operador de turno de esquerda binário em Ruby
O operador de turno esquerdo binário em Ruby é representado pelo suporte de ângulo duplo (<<). When used with integers, it shifts the bits of the left operand several positions to the left as specified by the right operand.

Neste tutorial, discutiremos os vários usos e funcionalidades de Ruby do operador binário de deslocamento esquerdo.

Sintaxe
A seguir, mostra a sintaxe do operador binário de turno à esquerda em Ruby:

número << position

O parâmetro de número indica o número cujo bits queremos mudar. O parâmetro de posição representa o número de posições que desejamos mudar os bits do número especificado.

Após a mudança de bits, o operador retornará um número inteiro equivalente ao valor decimal do número especificado.

Exemplo de demonstração

A seguir, mostra um exemplo do uso do operador de mudança de esquerda com um conjunto de valores inteiros:

IRB (principal): 001: 0> coloca 10 << 2
40

Concatenação de string

Também podemos usar o operador de mudança de esquerda para concatenar duas cordas. O método ingressará a string fornecida e modificará a string original como mostrado:

IRB (principal): 035: 0> Greet = 'oi.'
=> "Oi."
IRB (principal): 036: 0> Greet << "Hi to you too."
=> "Oi.Oi pra você também."

Array anexando usando o operador de turno esquerdo

Também podemos usar este operador para anexar um valor a uma matriz, conforme demonstrado no exemplo abaixo:

IRB (principal): 037: 0> arr = [1,2,3]
=> [1, 2, 3]
IRB (principal): 038: 0> arr << 4
=> [1, 2, 3, 4]

Nesse caso, o método funciona como o método da matriz#push. Você também pode fornecer outra matriz para empurrar para um existente.

IRB (principal): 039: 0> arr = [1,2,3]
=> [1, 2, 3]
IRB (principal): 040: 0> arr << [4,5,6]
=> [1, 2, 3, [4, 5, 6]]

Definição do método

Também podemos usar o << operator to define methods within a Class in Ruby. Take the example shown below:

pessoa de classe
aula << self
Def Greet
'oi.'
fim
fim
fim

Nesse caso, devemos definir a classe de uma pessoa com um método que imprime “oi” no console.

Podemos chamar o método:

IRB (principal): 057: 0> pessoa.saudar
=> "oi."

Conclusão

Discutimos as várias maneiras pelas quais você pode usar o operador de mudança de esquerda em Ruby para executar várias ações, como concatenação de string e mais.