본문 바로가기
프로그래밍/C#

C# List에서 HashSet으로 변환하기

by bantomak 2023. 6. 15.
반응형

List에서 HashSet으로 변환하기

1. HashSet 생성자 사용하기

HashSet은 유일한 요소들만을 포함한다. 리스트 안에 포함된 중복된 요소들은 버려진다.

using System;
using System.Collections.Generic;
 
public class Example
{
    public static void Main()
    {
        List<int> list = new List<int> { 1, 3, 3, 2, 4 };
        HashSet<int> set = new HashSet<int>(list);
 
        Console.WriteLine(String.Join(",", set));
    }
}
 
/*
    Output: 1,3,2,4
*/

 

 

2. Enumerable.ToHashSet() 메소드 (System.Linq)

HashSet<T>를 만들기 위해서 ToHashSet() 메서드를 사용한다.

using System;
using System.Linq;
using System.Collections.Generic;
 
public class Example
{
    public static void Main()
    {
        List<int> list = new List<int> { 1, 3, 3, 2, 4 };
        HashSet<int> set = list.ToHashSet();
 
        Console.WriteLine(String.Join(",", set));
    }
}
 
/*
    Output: 1,3,2,4
*/

 

HashSet에서 List로 변환하기

1. List 생성자 사용하기

List 생성자를 이용하면 set에 포함되어 있는 모든 요소를 포함한 새로운 인스턴스를 생성한다.

using System;
using System.Collections.Generic;
 
public class Example
{
    public static void Main()
    {
        HashSet<int> set = new HashSet<int> { 1, 2, 3, 4, 5 };
        List<int> list = new List<int>(set);
 
        Console.WriteLine(String.Join(",", list));
    }
}
 
/*
    Output: 1,2,3,4,5
*/

 

2. Enumserable.ToList() 메소드(System.Linq)

List<T>를 만들기 위해서 ToList() 메서드를 사용한다.

using System;
using System.Collections.Generic;
using System.Linq;
 
public class Example
{
    public static void Main()
    {
        HashSet<int> set = new HashSet<int> { 1, 2, 3, 4, 5 };
        List<int> list = set.ToList();
 
        Console.WriteLine(String.Join(",", list));
    }
}
 
/*
    Output: 1,2,3,4,5
*/

댓글