HashSet 데이터 추가하는 방법
이번 포스팅은 HashSet에 데이터를 추가할 수 있는 몇 가지 방법을 소개합니다.
방법 1. 초기화
첫 번째 방법으로 HashSet 객체를 생성할 때, 데이터를 추가할 수 있습니다.
생성자 함수 다음에 중괄호를 사용하며, 중괄호 내부에 추가하려는 데이터를 입력합니다.
예제 1. 기본 타입
다음 예제는 int 타입의 HashSet 객체를 생성할 때, 데이터를 추가합니다.
class Program
{
static void Main(string[] args)
{
HashSet<int> hs = new HashSet<int>()
{
10, 20, 30, 40, 50
};
Console.WriteLine("[hs의 요소]");
foreach (int item in hs)
{
Console.Write(item + " ");
}
}
}
[실행 결과]
[hs의 요소]
10 20 30 40 50
예제 2. 사용자가 정의한 클래스 타입
다음 예제는 HashSet 데이터의 타입이 사용자가 정의한 클래스인 경우 HashSet 객체를 생성할 때, 데이터를 추가하는 방법을 보여줍니다.
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main(string[] args)
{
HashSet<Person> hs = new HashSet<Person>()
{
new Person(){Name="둘리", Age=20},
new Person(){Name="또치", Age=30},
new Person(){Name="마이콜", Age=40}
};
Console.WriteLine("[hs의 요소]");
foreach (Person item in hs)
{
Console.WriteLine("Name: " + item.Name + ", Age: " + item.Age);
}
}
}
[실행 결과]
[hs의 요소]
Name: 둘리, Age: 20
Name: 또치, Age: 30
Name: 마이콜, Age: 40
방법 2. HashSet의 Add 메서드
두 번째 방법으로 HashSet 클래스에서 제공하는 Add() 메서드를 사용합니다.
public bool Add (T item);
Add() 메서드는 HashSet에 데이터가 정상적으로 추가되었으면 true를 반환하고 데이터가 이미 존재하는 경우 false를 반환합니다.
class Program
{
static void Main(string[] args)
{
HashSet<int> hs = new HashSet<int>();
Console.WriteLine("10이 정상적으로 추가되었는가? " + hs.Add(10));
Console.WriteLine("10이 정상적으로 추가되었는가? " + hs.Add(10));
Console.WriteLine("20이 정상적으로 추가되었는가? " + hs.Add(20));
Console.WriteLine("30이 정상적으로 추가되었는가? " + hs.Add(30));
Console.WriteLine("\n[hs의 요소]");
foreach (int item in hs)
{
Console.Write(item + " ");
}
}
}
[실행 결과]
10이 정상적으로 추가되었는가? True
10이 정상적으로 추가되었는가? False
20이 정상적으로 추가되었는가? True
30이 정상적으로 추가되었는가? True
[hs의 요소]
10 20 30
방법 3. HashSet의 UnionWith메서드
마지막 방법으로 HashSet에서 제공하는 UnionWith() 메서드를 사용하여 데이터를 추가할 수 있습니다.
추가하려는 데이터가 여러 개인 경우 UnionWith() 메서드를 사용합니다.
다음 예제는 int 타입의 HashSet에 int 타입의 List에 존재하는 데이터를 추가합니다.
class Program
{
static void Main(string[] args)
{
HashSet<int> hs = new HashSet<int>();
List<int> li = new List<int>()
{
10, 20, 30
};
hs.UnionWith(li);
Console.WriteLine("[hs의 요소]");
foreach (int item in hs)
{
Console.Write(item + " ");
}
}
}
[실행 결과]
[hs의 요소]
10 20 30
반응형
'C#' 카테고리의 다른 글
[C#]HashSet 특정 값 가져오는 방법 (0) | 2022.08.21 |
---|---|
[C#]HashSet 특정 값 삭제 방법 (0) | 2022.08.21 |
[C#]HashSet 특정 값이 존재하는지 확인하는 방법 (0) | 2022.08.21 |
[C#]Dictionary 초기화 방법 (0) | 2022.08.20 |
[C#]Dictionary 데이터 삭제하는 방법 (0) | 2022.08.20 |
댓글