티스토리 뷰

 

for문 일정 숫자만큼 증가하는 방법 - stride

 

Record

 작성일

2019. 06. 13 (목)

Swift 버전

Swift 5

Xcode 버전

10.2.1

 

안녕하세요. Fury에요 :]


반목문을 사용하다 보면 1씩 증가가 아닌 2 혹은 3 등

원하는 숫자만큼 증가시켜야 할 경우가 있습니다.

 

저의 경우는 api 데이터 중 일부가 3, 6, 9, 12와 같이 들어오는 경우가

발생했어요.

 

그 때, stride라는 것을 사용하면 됩니다.

 

 1. stride 사용법

 

stride(from: , to: , by: )

stride(from: , through: , by: )

 

stride를 쳐보면 위와같이 두 개의 stride가 있습니다.

 

예제 코드를 살펴보겠습니다.

 

for i in stride(from: 3, through: 12, by: 3) {
    print(i)
}

 

through 아규먼트를 가지는 stride 함수입니다.

그 결과,

"3 6 9 12"를 순차적으로 출력하게 됩니다.

 

for i in stride(from: 3, to: 12, by: 3) {
    print(i)
}

 

다음은 to 아규먼트를 가지는 stride 함수입니다.

그 결과,

"3 6 9"를 순차적으로 출력하게 됩니다.

12를 출력하지 않네요.

 

차이점을 보면 to, through 아규먼트 값인데

 

to는 to에 들어가는 값을 포함하지 않는 범위이고요.

through는 through에 들어가는 값을 포함한 범위입니다.

 

차이점을 확인하고 필요한 함수를 사용하면 되겠습니다!

 

감사합니다 :]

댓글