개발일지/c#

배열에서 LINQ사용

자코린이 2022. 1. 12. 16:07

LINQ는 마이크로소프트 사에서 만든 메모리DB이다.

이는 하드디스크에 저장된 일반 DB와 달리 빠른 속도가 장점이다.

하지만 그 결과값을 출력해야 한다.

예를 들어, 여기 2차원 배열이 있다.

int[,] table = new int[2, 3]; //c#에서는 [,] 배열과 [][] 배열은 다른 배열이다.
table[0, 0] = 1;
table[0, 1] = 2;
table[0, 2] = 3;

table[1, 0] = 4;
table[1, 1] = 5;
table[1, 2] = 6;
            
for(int i = 0; i<2; i++)
     {
         for(int j=0; j<3; j++)
           {
                int table_result = table[i, j];
                Console.WriteLine(table_result);
            }
       }

이 방법은 for,for반복문을 사용해 출력하는 방법으로 가장 기본적인 방법이다.

LINQ는 이 방법대신 sql을 사용하듯이 사용한다.

int[] scores = new int[] { 97, 92, 81, 60 }; //배열 선언

Enumerable<int> scoreQuery = //쿼리 정의

from score in scores

where score > 80

select score;

// 결과 반환

foreach (int i in scoreQuery)

{

Console.Write(i + " ");

}

https://docs.microsoft.com/ko-kr/dotnet/csharp/programming-guide/concepts/linq/

 

LINQ(Language-Integrated Query)(C#)

LINQ(Language-Integrated Query)에 대해 알아보고 전체 쿼리 작업의 예를 검토하세요.

docs.microsoft.com

마이크로소프트 공식 문서에 있는 LINQ사용법이다.

sql과 다르게 select문을 마지막에 넣는다.

하지만 꼭 이 구문을 쓰지 않고 함수를 사용하기도 한다.