Swift의 문자열과 NSRange을 혼용하는 방법에 대해
NSRange
는 NSString
의 서브스트링의 영역을 표시하기 위해 정의된 구조체 타입이다.1 이는 문자열 내의 특정 범위를 가리키기 위해 부분 범위가 시작하는 위치와 그 범위의 크기를 정의한다.
NSString -- location : 시작 위치의 오프셋
-- length : 범위의 길이
NSRange
는 NSString
의 서브스트링의 영역을 표시하기 위해 정의된 구조체 타입이다.1 이는 문자열 내의 특정 범위를 가리키기 위해 부분 범위가 시작하는 위치와 그 범위의 크기를 정의한다.
NSString -- location : 시작 위치의 오프셋
-- length : 범위의 길이
배열은 단일 인덱스를 통해 하나의 원소를 액세스하는 것 외에도 범위(Range<Index>
)값을 통해 하나 이상의 원소로 이루어진 부분 배열을 액세스하는 것이 가능하다.
let a = Array<Int>(1...10)
let b = a[3..<6] // [4, 5, 6]
범위는 ...
연산자와 ..<
연산자를 통해서 만들 수 있는데, 전자는 닫힌 범위, 후자는 열린 범위이다. 열린 범위는 맨 끝 값을 포함하지 않는 범위이다. 즉, 1...10 ==> 1, 2, 3 .. 10
이고 1..<10 ==> 1, 2, 3, .. 9
이다.
범위에 대해서도 좀 더 살펴봐야하겠지만, 여기서는 이 부분열에 대해 생각해보자. 이제 배열에 대해 보다 깊숙히 들여다 볼 차례이다.더 보기 »(Swift) Array 완전 정복 – 04. ArraySlice