[C# 문법] List<string> 을 List<decimal> 형식으로 형변환 하는 방법

안녕하세요.

 

오늘은 C# 문법에서 List<string> 으로 저장된 리스트의 목록들을 List<decimal> 형식으로 형변환 하는 방법에 대해서 알려 드리려고 합니다.

 

반복문을 이용해서 일일이 형변환 하는 방법도 있지만, 오늘은 LINQ를 이용해서 형변환 하는 방법에 대해서 알려드리겠습니다.

 

바로 예제 코드를 작성해 보도록 할게요.

 

예제 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
using System;
using System.Collections.Generic;
using System.Linq;
 
namespace ConsoleApp6
{
    class Program
    {
        static void Main(string[] args)
        {
            var dic = new Dictionary<stringList<string>>();
 
            List<string> list = new List<string>
            {
                "1.123",
                "1.543",
                "2.123",
                "4.123",
                "1.81654e+02" //자연로그
            };
 
            dic.Add("key", list);
 
            var query = dic.Where(x => x.Key == "key")
                                        .Select(x => x.Value)
                                        .FirstOrDefault();
 
            List<Decimal> prices = query.Select(x => Decimal.Parse(x, System.Globalization.NumberStyles.Float))
                                        .ToList();
 
            foreach (var item in prices)
            {
                Console.WriteLine($"{item.GetType()}");
            }
        }
    }
}
 
cs

 

실행 결과

 

위와 같이 소수점 형태가 1차적으로 문자열로 저장이 되어 있는데, LINQ를 이용하여 해당 목록들을 모두 Decimal 형태로 형변환을 시켰고 타입을 출력하니까 Decimal 형태로 알맞게 형변환이 이루어진 것을 확인하실 수 있습니다.

 

감사합니다.^^

728x90

이 글을 공유하기

댓글

Designed by JB FACTORY