Como remover um elemento de uma array em C#

  1. Utilize a cláusula where() para remover o elemento de um array em C
  2. Utilize o programa de deslocamento para remover o elemento de um array em C

Este artigo introduzirá diferentes métodos para remover o elemento de uma array regular utilizando código C#, como a cláusula where() e o programa de deslocamento.

Utilize a cláusula where() para remover o elemento de um array em C

Em C#, não existe tal método para remover ou adicionar elementos a uma array existente. É por isso que é recomendado usar uma lista ao invés de uma array. Mas podemos utilizar a cláusula where() do LINQ para encontrar o índice do elemento a ser removido e pular o elemento. Depois disso, converteremos o array em um novo array sem o elemento especificado.

O programa abaixo mostra como podemos utilizar a cláusula where() para remover o elemento de um array regular.

using System;
using System.Linq;

class StringToFloat {
  static void Main(string[] args) {
    string[] myArray = {
      "a",
      "b",
      "c",
      "d",
      "e"
    };
    Console.WriteLine("Array before deletion");
    foreach(string value in myArray) {
      Console.WriteLine(value);
    }
    int indexToRemove = 3;
    myArray = myArray.Where((source, index) =>index != indexToRemove).ToArray();
    Console.WriteLine("Array after deletion");

    foreach(string value in myArray) {
      Console.WriteLine(value);
    }
  }
}

Resultado:

Array before deletion
a
b
c
d
e
Array after deletion
a
b
c
e

Utilize o programa de deslocamento para remover o elemento de um array em C

Usaremos o programa de troca de elementos para remover o elemento de uma array regular.

O programa de mudança de elemento é o seguinte.

using System;
using System.Linq;

class StringToFloat {
  static void Main(string[] args) {
    string[] myArray = {
      "a",
      "b",
      "c",
      "d",
      "e"
    };
    Console.WriteLine("Array before deletion");
    foreach(string value in myArray) {
      Console.WriteLine(value);
    }
    int pos = 3;
    int i;
    for (i = pos - 1; i < 4; i++) {
      myArray[i] = myArray[i + 1];
    }
    Console.WriteLine("Array after deletion");

    for (i = 0; i < 4; i++) {
      Console.WriteLine(myArray[i]);
    }
  }
}

Resultado:

Array before deletion
a
b
c
d
e
Array after deletion
a
b
d
e

Artigo relacionado - Csharp Array

  • Anexar ao Array em C#
  • Obtenha o tamanho de un array em C#