Swift - stride
2020. 7. 1. 17:11ㆍLanguage/Swift
반응형
stride(from:to:by:)
Returns a sequence from a starting value to, but not including, an end value, stepping by the specified amount.
지정된 값만큼 단계적으로 시작 값에서 종료 값까지 포함하는 시퀀스를 반환합니다.
stride(from:through:by:)
Returns a sequence from a starting value toward, and possibly including, an end value, stepping by the specified amount.
시작 값부터 끝 값을 포함하여 지정된 양만큼 단계별로 시퀀스를 반환합니다.
간략하게 말하면 for문 과 동일해요.
그런데 Swift에서는 C스타일의 아래 증가하는 값에 대한 변경 기능을 지원을 안하기 떄문에 stride를 만든것이... 아닐까 하는?..
for (int i=0; i<10; i++) {
print("for a = \(a)")
}
stride(from:초기값, to:최종값, by:증가값) && stride(from:초기값, tothrough:최종값, by:증가값) 이라고 생각하시면 될 것 같아요.
for문과 비교해 보면 더 이해가 빠를거 같아요.
# 10미만 까지 1식 증가하는 stride(from:to:by:)
for a in 1..<10 {
print("for a = \(a)")
}
print("\n")
for a in stride(from: 1, to: 10, by: 1) {
print("stride a = \(a)")
}
for a = 1
for a = 2
for a = 3
for a = 4
for a = 5
for a = 6
for a = 7
for a = 8
for a = 9
stride a = 1
stride a = 2
stride a = 3
stride a = 4
stride a = 5
stride a = 6
stride a = 7
stride a = 8
stride a = 9
# 10이하 까지 1식 증가하는 stride(from:through:by:)
for a in 1...10 {
print("for a = \(a)")
}
print("\n")
for a in stride(from: 1, through: 10, by: 1){
print("stride a = \(a)")
}
for a = 1
for a = 2
for a = 3
for a = 4
for a = 5
for a = 6
for a = 7
for a = 8
for a = 9
for a = 10
stride a = 1
stride a = 2
stride a = 3
stride a = 4
stride a = 5
stride a = 6
stride a = 7
stride a = 8
stride a = 9
stride a = 10
# 10이하 까지 2식 증가하는 stride(from:through:by:)
for a in stride(from: 1, through: 10, by: 2){
print("stride a = \(a)")
}
stride a = 1
stride a = 3
stride a = 5
stride a = 7
stride a = 9
반응형
'Language > Swift' 카테고리의 다른 글
Swift - zip (0) | 2020.07.06 |
---|---|
Swift - flatMap, compactMap (0) | 2020.07.02 |
Swift - map (0) | 2020.06.29 |
Swift - filter (0) | 2020.06.29 |
Swift - sort, sorted (0) | 2020.06.29 |