Game Development, 게임개발/개발

C#에서 쓰이는 약간 다른 Loop 활용 [Unity]

게임이 더 좋아 2021. 3. 21. 03:06
반응형
728x170

 

For, While은 어디서 한 번쯤 들어봤을 것이다.

 

하지만 각 언어마다 특징이 있듯이

 C#에도 약간 좀 다른 특징이 있다.

알아보자

 


 

1. Do, While 문

 

using UnityEngine;
using System.Collections;

public class DoWhileLoop : MonoBehaviour 
{
    void Start()
    {
        bool shouldContinue = false;
        
        do
        {
            print ("Hello World");
            
        }while(shouldContinue == true);
    }
}

 

일반적으로 While문을 돌릴 때 행동하기 전에 조건이 True인지 체크를 하는데

얘는 우선 돌리고 True인지 체크를 한다.

 

예를 들면 설거지를 하고 있는데

남은 접시가 0보다 크면 설거지를 해야한다고 하자.

While문은

남은 접시를 확인하고

0보다 크면 설거지를 할 것이다.

 

하지만 Do While문은

우선 닦아..

엥? 내 남은 접시는 0개인데??

이런 상황이 벌어질 수 있는 것이다.

 

뭐 그리 나쁜 것은 아니다.

옆 사람 접시 닦아주면 생색좀 내면 되는거지

가 아니라

충분히 쓰일 수 있는 방법이다.

 

do while문의 의미는

"최소 실행 횟수가 1 이상이라는 것이다"

 

 

 


 

 

2. foreach ( "Data Type" "내가 꺼낼 항목" in "객체")

 

파이썬의 for 문과 같다고 보면 된다.

파이썬과 같이 쓸 수 있다.

using UnityEngine;
using System.Collections;

public class ForeachLoop : MonoBehaviour 
{   
    void Start () 
    {
        string[] strings = new string[3];
        
        strings[0] = "First string";
        strings[1] = "Second string";
        strings[2] = "Third string";
        
        foreach(string item in strings)
        {
            print (item);
        }
    }
}

 

실행이 되면 array에 있는 것들이 차례로 나온다.

 

반응형
그리드형