본문 바로가기

C#

C# LINQ 문법 사용법에 대해 공부해보고 알아보자

반응형

이 코딩을 LinQ를 통해서 재 구현 해보도록 한다. 

 

 

2023.03.10 - [C#] - C# - 네트워크 /Socket/TCP소켓

FROM / WHERE /ORDERBY / SELECT를 사용해 보았다. 

 

문제를 풀어 보자 

 

 //data 리스트에서 20 보다 큰 짝수를 내림 차순으로 정렬하여 저장
 //이값을 2씩 곱합여 오름 차순으로 정렬하여 저장

 

반응형

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp15
{
    class Program
    {
        static void Main(string[] args)
        {
            List<int> vs = new List<int> { 12, 3, 42, 1, 41, 2, 53, 4, 123, 15, 2345, 14, 35, 234, 1, 523, 4, };
            List<int> vs1 = new List<int>();
            foreach (var item in vs)
            {
                if (item %2==0)
                {
                    vs1.Add(item);
                }
                
            }
            vs1.Sort();

            foreach (var item in vs1)
            {
                Console.WriteLine(item);
            }

            var IsEvensort = from data in vs
                             where data % 2 == 0
                             orderby data
                             select data;
            
            foreach (var item in IsEvensort)
            {
                Console.WriteLine(item + " " );
            }
            Console.WriteLine();
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp16
{
    class Program
    {
        static void Main(string[] args)
        {
            //data 리스트에서 20 보다 큰 짝수를 내림 차순으로 정렬하여 저장
            //이 값을 2씩 곱합여 오름 차순으로 정렬하여 저장

            List<int> vs = new List<int> { 123, 12, 43, 121, 24, 1323, 321, 41, 25, 234, 6, 234, 23, 55, 432, 321 };
            List<int> vs1 = new List<int>();

            var IsEvenSort = from data in vs
                             where data % 2 == 0
                             orderby data
                             select data;
            foreach (var item in IsEvenSort)
            {
                Console.WriteLine(item  + " ");
            }

            var check1 = from data2 in IsEvenSort
                         where data2 > 20
                         orderby data2 descending
                         select data2 *2;
            
            foreach (var item in check1)
            {
                Console.WriteLine(item);
            }

           

        }
        private static void Print(string s , List<int> vs)
        {
            Console.WriteLine(s);
            foreach (var item in vs)
            {
                Console.WriteLine(" " + item);
            }
        }
    }
}
반응형