C#에서 배열 요소를 제거하는 방법

Minahil Noor 2023년12월11일
  1. where()절을 사용하여 C#에서 배열 요소 제거
  2. Shifting 프로그램을 사용하여 C#에서 배열 요소 제거
C#에서 배열 요소를 제거하는 방법

이 기사에서는where()절 및 시프트 프로그램과 같이 C# 코드를 사용하여 일반 배열의 요소를 제거하는 다양한 방법을 소개합니다.

where()절을 사용하여 C#에서 배열 요소 제거

C#에는 기존 배열에 요소를 제거하거나 추가하는 방법이 없습니다. 그렇기 때문에 배열 대신 목록을 사용하는 것이 좋습니다. 하지만 LINQ의 [where()](https://learn.microsoft.com/ko-kr/dotnet/csharp/language-reference/keywords/where-generic-type-constraint#:~:text= % 20where % 20clause % 20in % 20a, % 2C % 20value % 2C % 20or % 20unmanaged % 20type./) 절은 제거 할 요소의 인덱스를 찾고 요소를 건너 뜁니다. 그런 다음 지정된 요소가없는 새 배열로 배열을 변환합니다.

아래 프로그램은where()절을 사용하여 일반 배열의 요소를 제거하는 방법을 보여줍니다.

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);
    }
  }
}

출력:

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

Shifting 프로그램을 사용하여 C#에서 배열 요소 제거

요소 이동 프로그램을 사용하여 일반 배열의 요소를 제거합니다.

요소 이동 프로그램은 다음과 같습니다.

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]);
    }
  }
}

출력:

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

관련 문장 - Csharp Array