(Swift) Array – 05. NSArray

목차 Array – 생성과 조작 Array – Sequence 프로토콜 Array – Collection 프로토콜 Array – ArraySlice Array – NSArray 브릿징 – NSArray NSArray에서 제공하는 API를 사용하기 위해서는 Array 인스턴스를 as NSArray를 통해서 브릿징해야 한다. 브릿징이 가능한 경우는 배열 내 원소의 타입이 다음 중 한가지여야 한다. 클래스 @objc 속성이 있거나 Objective-C로부터 들여온 프로토콜 애초에 Foundation 타입으로

(Swift) Array 완전 정복 – 04. ArraySlice

ArraySlice 와 Range 배열은 단일 인덱스를 통해 하나의 원소를 액세스하는 것 외에도 범위(Range<Index>)값을 통해 하나 이상의 원소로 이루어진 부분 배열을 액세스하는 것이 가능하다. let a = Array<Int>(1…10) let b = a[3..<6] // [4, 5, 6] 범위는 … 연산자와 ..< 연산자를 통해서 만들 수 있는데, 전자는 닫힌 범위, 후자는 열린 범위이다. 열린 범위는 맨 끝 값을

(Swift) Array 완전 정복 – 03. Collection 프로토콜

Collection   Collection은 일반적인 “집합 컨테이너”를 묘사하는 프로토콜인데, 실질적으로는 Sequence 프로토콜을 상속하면서 한 가지 개념(기능)을 추가한 것으로 이해할 수 있다. 그것은 임의의 인덱스를 통해서 개별 원소를 액세스할 수 있는 점이다. 따라서 Sequence와 달리 여러번이고 순회할 수 있고, 순회 시 내부 자료가 소모되지 않는다.

(Swift) Array 완전정복 – 02. Sequence 프로토콜

Sequence 시퀀스(Sequence)는 직역하면 연속열이 될 수 있으며, 문자 그대로 개개의 원소들을 순서대로 하나씩 순회할 수 있는 타입을 의미한다. (Swift 기본 타입에 대해서는 사실상 모든 집합 타입이 이에 해당한다.) 시퀀스는 사실 Swift 문법과 밀접한 관련이 있는데, 바로 for – in 구문에 사용된다는 점이다.1

NSRegularExpression : 정규식 사용하기 – Swift

Swift의 정규식 Swift는 언어 자체에서 정규식을 지원하지 않고 Foundation의 NSRegularExpression 클래스를 이용한다. NSRegulareExpression의 init은 throws이기 때문에 try와 같이 사용되어야 한다. 매치 결과는 TextCheckingResult 클래스의 인스턴스를 얻게 된다. 이는 매치영역 및 영역 내 각 매치 그룹의 범위를 NSRange값으로 가지고 있다. 문제는 Swift 문자열의 부분문자열은 Index<String.Index>에 의해서 얻을 수 있지, NSRange를 이용할 수 없다. 따라서 이를 컨버팅하는