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

C# HybridDictionary의 Clear() 메서드로 모든 항목 한 번에 제거하기

C#에서 HybridDictionary는 소량의 데이터가 저장될 때는 ListDictionary처럼 동작하고, 항목 수가 많아지면 Hashtable로 전환되어 성능을 최적화하는 특수한 컬렉션입니다.

HybridDictionary에 저장된 모든 키/값 쌍을 한 번에 삭제하려면 Clear() 메서드를 사용하면 됩니다. 이 메서드는 컬렉션의 Count 값을 0으로 만들며, 모든 요소에 대한 참조를 해제합니다.

Clear() 메서드 기본 문법

dict.Clear();

매개변수 없이 호출하며, 반환값은 없습니다(void). 호출이 완료되면 해당 HybridDictionary는 비어 있는 상태가 됩니다.

예제 1: 두 개의 HybridDictionary에서 항목 제거하기

아래 예제에서는 두 개의 HybridDictionary를 생성하고, 그중 하나에 대해 Clear() 메서드를 호출하여 모든 항목을 제거하는 과정을 보여줍니다.

using System;
using System.Collections;
using System.Collections.Specialized;

public class Demo {
   public static void Main(){
      // 첫 번째 HybridDictionary 생성 및 항목 추가
      HybridDictionary dict1 = new HybridDictionary();
      dict1.Add("A", "Books");
      dict1.Add("B", "Electronics");
      dict1.Add("C", "Smart Wearables");
      dict1.Add("D", "Pet Supplies");
      dict1.Add("E", "Clothing");
      dict1.Add("F", "Footwear");

      Console.WriteLine("HybridDictionary1 elements...");
      foreach(DictionaryEntry d in dict1){
         Console.WriteLine(d.Key + " " + d.Value);
      }
      Console.WriteLine("Count of Key/value pairs in Dictionary1 = " + dict1.Count);

      // 두 번째 HybridDictionary 생성 및 항목 추가
      HybridDictionary dict2 = new HybridDictionary();
      dict2.Add("1", "One");
      dict2.Add("2", "Two");
      dict2.Add("3", "Three");
      dict2.Add("4", "Four");
      dict2.Add("5", "Five");
      dict2.Add("6", "Six");

      Console.WriteLine("\nHybridDictionary2 elements...");
      foreach(DictionaryEntry d in dict2){
         Console.WriteLine(d.Key + " " + d.Value);
      }
      Console.WriteLine("Count of Key/value pairs in Dictionary2 = " + dict2.Count);

      // dict2의 모든 항목 제거
      dict2.Clear();
      Console.WriteLine("Count of Key/value pairs in Dictionary2 (Updated) = " + dict2.Count);
   }
}

출력 결과

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

HybridDictionary1 elements...
A Books
B Electronics
C Smart Wearables
D Pet Supplies
E Clothing
F Footwear
Count of Key/value pairs in Dictionary1 = 6

HybridDictionary2 elements...
1 One
2 Two
3 Three
4 Four
5 Five
6 Six
Count of Key/value pairs in Dictionary2 = 6
Count of Key/value pairs in Dictionary2 (Updated) = 0

실행 결과를 보면 dict2.Clear() 호출 전에는 항목이 6개였지만, 호출 후 Count 값이 0으로 변경된 것을 확인할 수 있습니다. 반면 Clear()를 호출하지 않은 dict1은 여전히 6개의 항목을 유지하고 있습니다.

예제 2: 간단한 HybridDictionary 활용

이번에는 항목을 추가만 하고 Clear()를 호출하지 않은 기본적인 사용 예제입니다.

using System;
using System.Collections;
using System.Collections.Specialized;

public class Demo {
   public static void Main(){
      HybridDictionary dict = new HybridDictionary();
      dict.Add("One", "Accessories");
      dict.Add("Two", "Pet Supplies");

      Console.WriteLine("HybridDictionary elements...");
      foreach(DictionaryEntry d in dict){
         Console.WriteLine(d.Key + " " + d.Value);
      }
      Console.WriteLine("Count of Key/value pairs in Dictionary = " + dict.Count);
   }
}

출력 결과

HybridDictionary elements...
One Accessories
Two Pet Supplies
Count of Key/value pairs in Dictionary = 2

정리

  • HybridDictionary의 모든 항목을 제거하려면 Clear() 메서드를 사용합니다.
  • Clear() 호출 후 컬렉션의 Count 속성은 0이 됩니다.
  • Clear()는 매개변수와 반환값이 없으며, 컬렉션 자체는 그대로 유지되고 내용만 비워집니다.