반응형

 Swift 의 흐름제어 (Control Flow) 에는 조건문과 반복문이 있다. 

조건문에는 IF 문과 Switch 문이 있었고




2018/11/10 - [IT 정보 로그캣/Swift] - [Swift 공부] 조건문




이번에 살펴볼 반복문에는 For-In while 구문이 있다. 

반복문은 이름 그대로 어떠한 작업을 반복하기 위해서 필요한 것들인데 이름에서부터 왜 필요한지 느껴진다. 

코드나 상황을 반복해야할 때 Ctrl + c , Ctrl + v  는 지겹고도 비효율적이기 때문이다. 

(이것도 결국 프로그래머 좋으라고 있는..)




For - In 


 For - In 구문은 우리가 자바에서 사용하던 for - each 구문과 똑같다고 보면된다. 

기존에 사용하던 for ( ~ ; ~ ; ~ ) 형태의 구문이 Swift 에서는 사라졌는데  (Swift 3 부터 없어졌다.) 

아마도 For - In  구문이 더 간단하기도 하고, For - In 구문만으로도 충분하다고 생각한 것 같다.

For - In 구문은 배열, 수의 범위, 딕셔너리 같은 시퀀스를 다루는데 사용한다. 



그림 1 > 배열을 이용한 For - In 








그림 2 > 딕셔너리를 이용한 For - In






그림 3 > 수의 범위를 이용한 For - In ( 따로 시퀀스가 필요없는 경우 와일드 카드 패턴을 이용할 수도 있다.)



 For - In 구문에서 stride(from : 값1 to : 값2 by: 값3 ) 라는 함수를 사용할 수도 있다. stride 함수는 두 수 사이에 특정한 값의 간격을 주어 시퀀스를 사용할 수 있게 한다. 함수를 풀이해보자면 from 의 값1 부터 to 의 값2 까지 by 의 값3 씩 간격을 준다는 의미이다.

 * stride 함수에는 (from : 값1 to : 값2 by : 값3) 와 (from : 값1 through : 값2 by: 값3 ) 의 형태가 있는데 to 를 사용하는 경우에는 마지막값이 포함되지 않고, through 를 사용하는 경우 마지막값까지 포함한다 ( 미만과 이하 의 차이라고 생각하면 된다.)


그림 4 > For - In 구문에 Stride (from : 값1 to : 값2 by : 값3) 함수 사용








그림 5 > For - In 구문에 Stride (from : 값1 through : 값2 by : 값3) 함수 사용





while


 while 구문에는 그냥 while 을 사용하는 것과 repeat - while 을 사용하는 2가지 방법이 있다. 

두개 의 차이는 자바로 비교하면 while 과 do - while 의 차이라고 볼 수 있다. ( 실제로 do 를 repeat 으로 바꾼 것 뿐이다)

 while 은 조건부터 체크하여 조건이 만족할 때에만 { } 안의 코드를 실행 시키지만 repeat - while 은 일단 { } 안의 코드를 한번 실행시키고 그다음 (2회 차) 부터 조건을 체크하여 { } 안의 코드를 실행 시킬지 결정한다.


그림 6 > while 구문









그림 7 > repeat - while 구문

반응형

'IT 정보 로그캣 > Swift' 카테고리의 다른 글

[Swift 공부] 클로져 (Cloures) 란?  (0) 2019.01.13
[Swift 공부] 함수  (0) 2018.12.15
[Swift 공부] 조건문  (0) 2018.11.10
[Swift 공부] 기본 연산자  (0) 2018.11.04
[Swift 공부] 컬렉션 타입이란 ?  (0) 2018.11.03

+ Recent posts