본문 바로가기

Swift

[Swift] Where, Switch, Binding

 

평소에 안쓰던 문법들을 다시 보면 되게 새롭습니다. 그중 Where문을 간단히 공부해보겠습니다.

 

Where

where문은 크게 2개로 쓰입니다. 

1. for문 while문 switch문등에서 조건을 추가하여 나타낼 수 있습니다.

2. 그리고 프로토콜의 extension같은 타입에도 조건을 추가할 수 있습니다.

 

간단한 예시를 보면

위와 같은 for문에서 where이 없다면 1부터 10까지 출력하게됩니다. 하지만 where 절에 i % 2 == 1 즉 홀수 일 때 true가 되는 조건이 추가가 되어서  10까지의 홀수만 출력이 됩니다.  이렇게 코드의 길이를 단축 시킬 수 있습니다.!  

 

 

 

switch문의 case에도 where문을 넣을 수 있습니다. 맨 위의 case는 wildcard를 쓰며 where 절의 num % 2 == 0 즉 짝수일 때 true가 되는 조건을 추가하여 짝수의 case만 출력할 수 있습니다.

 

 

 

\ switch구문의 값 바인딩 패턴을 이용한 case에서 바인딩 딘 값들로도 where문을 구성할 수 있습니다.

 

 

Protocol Extension에서도 where를 쓸 수 있으며 where Self: $PROTOCOL 특정 PROTOCOL을 따르는 것들에게만 extension을 시켜줄 수 있습니다.

 

 

 

 


 

 

'Swift' 카테고리의 다른 글

[Swift] Completion, Closure Excaping  (0) 2021.03.25
[Swift] First Class Type  (0) 2021.03.25
[Swift] 정규식 (규식이)  (0) 2021.03.21
[Swift] 콜렉션 타입 Collection Types  (1) 2021.03.15
[Swift] 상속 - rewind  (0) 2021.01.22