C#의 Queue.Count 속성은 큐(Queue)에 현재 저장되어 있는 요소의 개수를 반환하는 읽기 전용 속성입니다. 내부적으로 개수 정보를 바로 제공하기 때문에 성능 부담 없이 호출할 수 있으며, 반복 처리 전에 데이터 존재 여부를 확인하거나 큐의 상태를 추적할 때 매우 유용합니다.
문법(Syntax)
Queue.Count 속성의 기본 문법은 다음과 같습니다.
public virtual int Count { get; }주요 특징
- 반환형은
int이며, 큐가 비어 있으면 0을 반환합니다. - get 전용 속성이므로 외부에서 값을 직접 설정할 수 없습니다.
- Enqueue(요소 추가), Dequeue(요소 제거), Clear() 호출 시 자동으로 갱신됩니다.
예제 1: 요소 개수 확인 후 Clear()로 초기화하기
아래 예제에서는 정수형 큐에 10개의 요소를 추가한 뒤 Count 값으로 요소 개수를 확인하고, Clear() 메서드로 모든 요소를 제거한 후 다시 개수를 출력해 봅니다.
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
Queue<int> queue = new Queue<int>();
queue.Enqueue(100);
queue.Enqueue(200);
queue.Enqueue(300);
queue.Enqueue(400);
queue.Enqueue(500);
queue.Enqueue(600);
queue.Enqueue(700);
queue.Enqueue(800);
queue.Enqueue(900);
queue.Enqueue(1000);
Console.WriteLine("Queue...");
foreach(int i in queue) {
Console.WriteLine(i);
}
Console.WriteLine("큐의 요소 개수 = " + queue.Count);
queue.Clear();
Console.WriteLine("큐의 요소 개수 [변경 후] = " + queue.Count);
}
}실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Queue... 100 200 300 400 500 600 700 800 900 1000 큐의 요소 개수 = 10 큐의 요소 개수 [변경 후] = 0
예제 2: 요소 추가에 따른 Count 변화 확인
다음 예제는 요소를 추가할 때마다 Count 값이 어떻게 갱신되는지 단계별로 보여줍니다.
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
Queue<int> queue = new Queue<int>();
queue.Enqueue(100);
queue.Enqueue(200);
queue.Enqueue(300);
Console.WriteLine("Queue...");
foreach(int i in queue) {
Console.WriteLine(i);
}
Console.WriteLine("큐의 요소 개수 = " + queue.Count);
queue.Enqueue(800);
queue.Enqueue(900);
queue.Enqueue(1000);
Console.WriteLine("큐의 요소 개수 [변경 후] = " + queue.Count);
queue.Clear();
Console.WriteLine("큐의 요소 개수 [변경 후] = " + queue.Count);
}
}실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Queue... 100 200 300 큐의 요소 개수 = 3 큐의 요소 개수 [변경 후] = 6 큐의 요소 개수 [변경 후] = 0
정리
Queue.Count 속성은 C#에서 큐에 담긴 요소 개수를 빠르고 간편하게 확인할 수 있는 필수 기능입니다. Enqueue와 Dequeue 작업이 일어날 때마다 값이 자동으로 갱신되므로, 별도의 카운터 변수를 관리할 필요 없이 언제든 큐의 현재 상태를 정확하게 파악할 수 있습니다.