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

C# Hashtable에서 특정 키 찾기 – Contains() 메서드 활용 방법

C#에서 Hashtable 컬렉션에 특정 키(key)가 존재하는지 확인해야 할 때가 있습니다. 이럴 때 Contains() 메서드를 사용하면 간단하게 키의 존재 여부를 확인할 수 있습니다.

Hashtable 컬렉션 설정하기

먼저 Add() 메서드를 사용해 Hashtable에 키와 값 쌍을 추가합니다.

Hashtable h = new Hashtable();
h.Add(1, "Jack");
h.Add(2, "Henry");
h.Add(3, "Ben");
h.Add(4, "Chris");

Contains() 메서드로 키 확인하기

특정 키가 Hashtable에 있는지 확인하려면 Contains() 메서드를 호출하고 찾고자 하는 키를 인수로 전달하면 됩니다. 아래 예시에서는 키 3이 존재하는지 확인합니다.

h.Contains(3);

키가 존재하면 true, 존재하지 않으면 false를 반환합니다.

전체 예제 코드

using System;
using System.Collections;

public class Demo {
   public static void Main() {
      Hashtable h = new Hashtable();
      h.Add(1, "Jack");
      h.Add(2, "Henry");
      h.Add(3, "Ben");
      h.Add(4, "Chris");

      Console.WriteLine("Keys and Values list:");
      foreach (var key in h.Keys) {
         Console.WriteLine("Key = {0}, Value = {1}", key, h[key]);
      }

      Console.WriteLine("Key 3 exists? " + h.Contains(3));
   }
}

실행 결과

Keys and Values list:
Key = 4, Value = Chris
Key = 3, Value = Ben
Key = 2, Value = Henry
Key = 1, Value = Jack
Key 3 exists? True

참고 사항

Hashtable은 내부적으로 해시 기반으로 데이터를 저장하기 때문에 위 실행 결과처럼 키가 입력한 순서대로 정렬되어 출력되지 않습니다.

또한 C#에서는 Contains() 외에 ContainsKey() 메서드로도 동일하게 키의 존재 여부를 확인할 수 있으며, 값(value)의 존재 여부를 확인할 때는 ContainsValue() 메서드를 사용하면 됩니다.