여니의 프로그래밍 study/C, C++, C#

C# foreach문 제대로 알고 사용 하자!

여니's 2019. 11. 29. 19:37

블로거 여니입니다!

오늘은 C# foreach문에 대한 포스팅을 진행해보려고 합니다.

 

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

그래서 배열의 끝에 도달하게 되면 자동으로 반복이 종료됩니다

 

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

 

foreach 문이 한번 반복을 수행할때마다 배열을 차례대로 접근하면서 변수에다가 담아줘요.

그래서 그 변수를 이용해서 원하는 구문을 실행하면 끝!

정말 간단하죠?

(저도 공부하면서 배워나가는 중이라 부족한 부분이 있으면 댓글 남겨주세요..! 수정해서 올릴게요)

 

num라는 변수에 배열 arr의 데이터들이 담겨서 출력되고 있는걸 확인할 수 있어요

foreach를 사용했더니 한번에 순회하는 것을 볼 수 있어요~

 

그런데 foreach문 in 앞에 데이터형식이랑 변수명을 쓰는게 올바른 형식인데,

공부를 하다보니까 데이터형식 부분에 var이라는 걸 쓰더라구요?

분명 제가 위에 짠 코드대로라면 데이터형식에 int라는 걸 써야하는데 왜 var을 썼을까.. var에 대해 먼저 알아봤어요

 

var키워드는 암시적 타입 지역 변수에요.

var 키워드는 초기화 문의 오른쪽에 있는 식에서 변수의 형식을 유추하도록 컴파일러에게 지시를 해요

그래서 명시적 형식을 제공하지 않고 지역 변수를 선언할 수 있어요!

 

var i = 5; 

위의 문장을 가지고 예를 들어볼게요

5의 데이터형식은 정수이죠?

원래대로라면 변수 i의 형식은 int라고 적혀있어야하는데요

var이라고 써도 무방하다는 거죠!

(이게 가능한 이유는 컴파일러가 가장 적절한 형식을 결정해서 할당하기 때문에 가능하답니다)

 

foreach 초기화문에서도 사용할 수 있고, for 초기화문에서, using문에서도 사용이 가능해요

대부분 var을 사용하는 건 선택사항이고 편리한 구문을 위해서 계속 사용을 한다고 해요!

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

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = { 1, 2, 3, 4, 5,6,7 };
            foreach(int num in arr)
            {
                Console.WriteLine(num);
            }
        }
    }
}

 

오늘은 여기서 포스팅 마치도록 할게요

(공부해서 더 자세히 알게되면 추가 수정할 게요..)

공감 좋아요 구독 좋아요