본문 바로가기

스위프트

스위프트 튜토리얼(4) - Switch Statements

스위프트 튜토리얼(4) - Switch Statements

 

youtu.be/Ulp1Kimblg0?t=2282

위 영상의 Switch Statements를 보고 작성하는 포스팅이다.

 

xcode의 playground를 켜고 따라 해 보자.

 

var someCharacter:Character = "a"

if someCharacter == "a" {
	print("is an A")
}

새로운 Character라는 새로운 Data Type이 나왔는데 당황하지 말자. String은 텍스트를 저장하는 Data Type인데 이에 반해 Character는 한 글자만 저장할 수 있는 Data Type이다. 

 

if조건문은 현재 someCharacter과 "a"일 때를 검사하고 있다. 그런데 만약 "b", "c", "d" 일 때도 검사를 해야 된다면  else if 구문을 세 개 더 작성해주어야 될 것이다. 이걸 쉽게 만들기 위한 문법이 switch 구문이다. 양식은 다음과 같다.

 

switch value to consider{
	case value1:
    	some code
        
    case value2:
    	some code
    
    default:
    	some code

}

 

역시나 예시를 보면 이해하기가 더 쉽기 때문에 빠르게 예시를 보도록 하자.

var someCharacter:Character = "a"

switch someCharacter{

	case "a":
		print("is an A")
        
	case "b":
		print("is a B")
    
	default :
		print("some fallback")
}

if문으로도 위와 같은 기능을 하는 코드를 작성할 수 있지만 switch문으로 작성하는 것이 깔끔하고 이해하는데도 쉽다.

각 케이스에 대해서 어떠한 코드를 실행시킬지 정할 수 있고, 어느 케이스에도 해당되지 않을 경우 default:에 해당되는 코드가 실행이 된다.

 

case 오른쪽에 들어가는 값은 두 개 이상 들어갈 수도 있다. 다음 예시를 보자.

var someCharacter:Character = "c"

switch someCharacter{

	case "a":
		print("is an A")
        
	case "b", "c":
		print("is a B or C")
    
	default :
		print("some fallback")
}

두 번째 case에 "b", "c"가 있고 someCharacter가 "c"이기 때문에 "is a B or C"라는 문자열을 출력하게 된다.

 

프로그래밍을 하는데 if문을 아마 더 많이 쓰게 될 것이지만 switch 문도 적절하게 쓸 수 있도록 하자. if문에 비해 읽기 쉽고 이해하기도 쉽기 때문이다.