Remova um elemento de matriz em Ruby

Remova um elemento de matriz em Ruby
Matrizes são algumas das estruturas de dados mais versáteis e populares em Ruby e outras linguagens de programação. Embora a implementação possa diferir com base em várias linguagens de programação, em Ruby, podemos definir uma matriz como uma coleção de itens de vários tipos de dados, incluindo outras matrizes.

Matrizes em Ruby são ordenadas e podem ser acessadas usando índices. Um índice de matriz refere -se a um valor inteiro que denota a posição de um elemento em uma matriz. Em Ruby, as matrizes são objetos da classe Array, que contém um conjunto de métodos e estruturas de dados úteis para trabalhar com matrizes.

Este post discutirá os fundamentos do trabalho com matrizes, incluindo como remover um elemento de uma matriz em rubi.

Ruby Criar Array

Em Ruby, podemos criar uma matriz usando um suporte quadrado e adicionar os elementos da matriz dentro dela. Cada elemento da matriz é separado por uma vírgula, como mostrado na sintaxe abaixo:

Array = [Element1, Element2, Element3… Elementn]

Por exemplo:

top_databases = ["MySQL", "PostGresql", "Oracle Database", "SQL Server", "MongoDB"]

Nesse caso, criamos uma matriz chamada top_database. A matriz contém cinco elementos do tipo de string, cada um representando um banco de dados diferente.

Também podemos usar a matriz.Novo método para criar uma nova matriz. Um exemplo é como mostrado abaixo:

top_databases = matriz.novo (["MySQL", "PostGresql", "Oracle Database", "SQL Server", "MongoDB"])

Rubi Remova o elemento da matriz

O método de rejeição é o primeiro método para remover um elemento de uma matriz.

O método de rejeição nos permite filtrar elementos de uma matriz ou um objeto enumerável com base em uma condição específica. O método leva um bloco como um argumento e o bloco deve retornar verdadeiro ou falso para cada elemento. Elementos para os quais o bloco retorna true são removidos da coleção original e uma nova coleção que contém os ingredientes restantes é retornada.

É bom lembrar que o método não alterará a matriz original. Em vez disso, cria uma nova matriz para armazenar os elementos.

Veja o exemplo abaixo:

números = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
ímpar_numbers = números.rejeitar | n | n % 2 == 0

No exemplo acima, usamos o método de rejeição na matriz de números. O bloco levará os elementos n e retornará verdadeiro se o elemento for uniforme; falso se o elemento for estranho. O método de rejeição removerá todos os elementos que são verdadeiros e armazenarão os valores 'falsos' na nova matriz.

Saída:

=> [1, 3, 5, 7, 9]

Remova o elemento da matriz

O método de subtração é o segundo método que podemos usar para remover um elemento de uma matriz. Isso nos permite subtrair duas matrizes e armazenar valores semelhantes.

Um exemplo é como mostrado abaixo:

números_to_remove = [3, 4, 5]
original_array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
new_array = original_array - números_to_remove

Array resultante:

=> [1, 2, 6, 7, 8, 9, 10]

Neste exemplo, o new_array contém todos os elementos do original_array, exceto os que estavam presentes na matriz Numbers_to_remove.

Podemos usar este método para remover vários elementos de uma vez. Esta é uma maneira mais eficiente do que loop sobre a matriz e remover elementos um por um.

Vale a pena notar que esse método apenas remove os elementos se existirem na matriz original e se forem exatamente o mesmo objeto, não se forem iguais.

Ruby Excluir elemento da Array - Método 3

Ruby também nos fornece o método de exclusão que nos permite remover um elemento especificado de uma determinada matriz

A função excluirá o elemento especificado e o retornará como a saída. É bom ter em mente que este é um método destrutivo, isso significa que fará modificações na matriz original, conforme demonstrado abaixo:

arr = [1,2,3,4,5,6]
arr.Excluir (5)
=> 5

Saída:

IRB (principal): 040: 0> coloca o ARR
1
2
3
4
6
=> nil

Ruby Excluir elemento do Array - Método 4

Também podemos excluir um elemento de uma matriz usando a posição de índice do elemento usando o método Delete_at ().

O método aceita o índice de destino cujo elemento desejamos excluir como o parâmetro. A sintaxe é como mostrado abaixo:

variedade.delete_at (índice)

O índice indica a posição do índice do elemento que desejamos excluir.

Da mesma forma, o método retornará o valor do elemento que excluímos.

Um exemplo é mostrado abaixo:

original_array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
original_array.delete_at (2)
=> 3

Neste exemplo, a função delete_at e passa o índice de destino como 2. Nesse caso, a função remove o elemento no índice especificado, 3 e modifica a matriz original.

A função também retornará um erro se o índice especificado estiver fora de intervalo. Para evitar modificar a matriz original, você pode usar outros métodos discutidos acima ou notação de suporte quadrado.

original_array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
new_array = original_array [0… 2] + original_array [3… -1]

Isso funciona removendo o elemento na posição de destino e concatenando as matrizes resultantes em um único valor.

Conclusão

Nisso, você se deparou com quatro métodos principais que pode usar para remover um elemento de uma matriz de entrada usando a linguagem de programação Ruby.