F.R.I.D.A.Y.

C# - 조건문 본문

DEV/.Net

C# - 조건문

F.R.I.D.A.Y. 2021. 5. 27. 15:21
반응형

 if 조건문과 switch 조건문


Index

  • if-else
  • switch

Script from F.R.I.D.A.Y


if-elsecopy^

 가장 대표적인 조건 분기문으로, 사용은 C++과 동일하다. 한가지 아쉬운 점이라면 안에 들어오는 expression은 무조건 bool 타입이어야 한다.

int a = 10;
if(a){}

 이런식의 처리가 가능하지 않다는 소리다. 때문에 논리 연산자를 이용해 무조건 true/false로 값을 주어야한다. 이 점은 좀 더 명확히 하기 위해서인듯

 

 키워드는 동일하게 if - else로 구성되어 있다. 일부 언어에서는 else if를 하나로 묶어버리는 경우가 있는데 C#의 경우엔 여전히 C/C++을 따라 if와 else로만 구성한다.

 

switchcopy^

 C++에서 진일보했다고 생각한다. 단순히 상수로만 구분하는 것이 아니라 문자열로도 판단이 가능하다.[1]

string str = "hello"

switch(str){
    case "hello":
        System.Console.WriteLine("Hello world!");
        break;
    default:
        System.Console.WriteLine("null");
        break;
}

 C++과 달라진 점이라면 case 구문 사이에 하나의 명령이라도 있으면 무조건 break를 넣어야한다는 점이다. C++에선 break 명령을 넣지 않아도 오류로 잡지 않았는데 C#에선 문법상 잡아버리는 듯.

switch(str){
    case "H":
    case "Hello":
        System.Console.WriteLine("test");
            // error, break 구문 없음
    case "world":
        System.Console.WriteLine("Hello");
}

 다만 case 사이에 명령이 존재하지 않으면 C++과 동일하게 사용이 가능하다.

 

728x90
반응형

'DEV > .Net' 카테고리의 다른 글

C# - 예외 처리  (0) 2021.05.27
C# - 반복문  (0) 2021.05.27
C# - Nullable Type  (0) 2021.05.27
C# - enum(열거형)  (0) 2021.05.27
C# - 문자열  (0) 2021.05.27
Comments