쿼리 식은 from 절로 시작해야 한다. 또한 쿼리 식은 from 절로 시작하는 하위 쿼리를 포함할 수 있다.

 

from절에 들어갈 내용

  • 쿼리 또는 하위 쿼리가 실행될 데이터 소스
  • 소스 시퀀스의 각 요소를 나타내는 지역 범위 변수
  • from절에서 참조되는 데이터 소스는 IEnumerable, IEnumerable<T> 형식이거나 IQueryable<T>와 같은 파생 형식이어야 한다.
class LowNums
{
	static void Main()
    {
    	int[] numbers = {5, 4, 1, 3, 9, 8, 6, 7, 2, 0};
        
        var lowNums = from num in numbers
        	where num < 5
            select num;
            
        foreach (int i in lowNums)
        {
        	Console.Write(i + " ");
        }
    }
}
// Output : 4 1 3 2 0 

 

 

[출처] docs.microsoft.com/ko-kr/dotnet/csharp/language-reference/keywords/from-clause

 

foreach문은 배열을 순회하면서 각각의 데이터 요소들에 순서대로 접근할 수 있도록 해주는 역할을 한다.

 

문법

foreach (데이터형식 변수명 in 배열) { }

int[] arr = {1, 2, 3, 4, 5, 6};
foreach (int num in arr)
{
	Console.WriteLine(num);
}

 

데이터 형식에는 var도 들어갈 수 있다.

  • var키워드는 암시적 타입 지역 변수를 의미하는데 초기화 문의 오른쪽에 있는 식에서 변수의 형식을 유추하도록 컴파일러에게 지시를 함으로써 명시적 형식을 제공하지 않고 지역 변수를 선언할 수 있다.
  • foreach 초기화문 , for 초기화문, using문에서 사용 가능하다. 
int[] arr = {1, 2, 3, 4, 5, 6};
foreach (var num in arr)
{
	Console.WriteLine(num);
}

 

+ Recent posts