Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# Queue에서 모든 요소 한 번에 제거하기 – Clear() 메서드 활용법

C#에서 Queue(대기열)에 저장된 모든 개체를 한 번에 제거하려면 Clear() 메서드를 사용하면 됩니다. 이 메서드는 대기열 내부의 모든 요소를 삭제하고, 그 결과로 Count 속성이 0으로 변경됩니다.

Queue.Clear() 메서드란?

Queue<T> 클래스의 Clear() 메서드는 대기열에 포함된 모든 개체를 제거하는 역할을 합니다. 별도의 반복문 없이 단 한 번의 호출로 대기열 전체를 비울 수 있어 매우 간편합니다.

예제 1

다음은 Queue에서 모든 개체를 제거하는 코드입니다.

using System;
using System.Collections.Generic;

public class Demo {
   public static void Main(){
      Queue<string> queue = new Queue<string>();
      queue.Enqueue("Gary");
      queue.Enqueue("Jack");
      queue.Enqueue("Ryan");
      queue.Enqueue("Kevin");
      queue.Enqueue("Mark");
      queue.Enqueue("Jack");
      queue.Enqueue("Ryan");
      queue.Enqueue("Kevin");

      Console.Write("Count of elements = ");
      Console.WriteLine(queue.Count);

      queue.Clear();

      Console.Write("Count of elements (updated) = ");
      Console.WriteLine(queue.Count);
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Count of elements = 8 
Count of elements (updated) = 0

처음에는 8개의 요소가 담겨 있었지만, Clear() 메서드 호출 이후 요소 개수가 0으로 바뀐 것을 확인할 수 있습니다.

예제 2

이번에는 또 다른 예제를 살펴보겠습니다.

using System;
using System.Collections.Generic;

public class Demo {
   public static void Main(){
      Queue<string> queue = new Queue<string>();
      queue.Enqueue("A");
      queue.Enqueue("B");
      queue.Enqueue("C");
      queue.Enqueue("D");
      queue.Enqueue("E");

      Console.WriteLine("Count of elements = " + queue.Count);

      queue.Clear();

      Console.Write("Count of elements (updated) = " + queue.Count);
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Count of elements = 5 
Count of elements (updated) = 0

정리

C#의 Queue<T>에서 모든 요소를 제거하는 방법은 매우 간단합니다. Clear() 메서드를 호출하기만 하면 되며, 이 메서드는 다음과 같은 특징을 가지고 있습니다.

  • 대기열의 모든 요소를 즉시 제거합니다.
  • 호출 후 Count 값이 0으로 설정됩니다.
  • 반환값이 없습니다(void 타입).
  • 대기열이 이미 비어 있는 상태에서 호출해도 오류 없이 안전하게 동작합니다.