티스토리 뷰
반응형
Dictionary
딕셔너리
키-값 의 쌍 요소로 구성된 컬렉션
Declaration
선언방법
@frozen struct Dictionary<Key, Value> where Key : Hashable
딕셔너리(Dictionary)는 해시 테이블 타입으로 포함하고 있는 항목에 대한 빠른 접근을 제공합니다. 테이블 내 각각의 항목은 각각의 키를 사용하여 식별이 되어집니다. 이때 키(Key)값은 Hashable 프로토콜을 준수해야하여 그 예시로는 string, number 등이 있습니다. 당신은 키를 사용하여 해당 카에 순응하는 값을 추출할 수 있습니다. 이때 값(Value)은 키와 달리 Any타입으로서 어떠한 타입도 들어갈 수 있습니다. swift의 Dictionary와 유사한 타입을 다른 언어에서는 Hashes, associated arrays 라고도 합니다.
let dic = [String: Int]()
딕셔너리 리터럴, "[:]" 를 사용해서 딕셔너리를 생성할 수 있습니다.
딕셔너리를 ':' 를 구분지어 양 옆에 키, 값으로 이루어집니다. 또한 [] 괄호로 감싸서 표현합니다. 이렇게 만들어진 dictionary 리터럴은 변수, 상수, 인자값 등으로서 전달할 수 있습니다.
아래의 코드는 HTTP 응답 코드 및 그에 상응하는 메세지들에 대한 정보를 가진 딕셔너리를 생성하는 방법입니다.
var responseMessages = [200: "OK",
403: "Accesss forbidden",
404: "File not found",
500: "Internal server error"]
해당 딕셔너리, responseMessages variable은 [Int: String] 타입으로서 만들어졌습니다. 이 경우, Key타입은 Int, Value타입은 String이 됩니다.
딕셔너리를 어떠한 키-값 페어도 갖지 않은 채로 생성하려면, "[:]" 를 할당하면 됩니다.
// String Key, String Value 타입으로 어떠한 키-값 쌍도 갖고 있지 않는 딕셔너리, emptyDict
var emptyDict: [String: String] = [:]
Swift의 기본 타입들을 포함해서 Hashable 프로토콜을 준수하는 타입이라면 딕셔너리의 Key 타입으로서 사용될 수 있습니다.
기본적으로 Hashable 프로토콜을 준수하지 못하는 타입일 경우, 직접 사용자 정의로 Hashable 프로토콜을 준수하도록 설정한다면, 딕셔너리의 Key값으로 활용될 수 있습니다.
Dictionary 원본 개발자 문서 링크 ▼
Dictionary Overview
반응형
'iOS 개발 > 개발자문서 정보' 카테고리의 다른 글
iOS NLLanguageRecognizer로 문자열 언어 분석하기 (0) | 2020.05.27 |
---|---|
iOS Vision, VNImageRequestHandler 개발자문서 개요 (0) | 2020.05.24 |
iOS ML모델로 이미지 내 사람 관절 및 신체동작 감지하기 (0) | 2020.05.05 |
iOS NLTokenizer로 자연어 텍스트 토큰화하는 방법 (0) | 2020.05.04 |
iOS ML모델 생성 및 학습 도구, CreateML 문서 개요 (0) | 2020.05.02 |
댓글
반응형
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Swift 알고리즘
- SwiftUI
- 알고리즘
- 백준swift
- 개발자문서
- 컬렉션
- Collection
- CoreML
- 자연어처리
- 알고리즘문제
- 프로그래머스
- swift 문자열
- 프로토콜
- createML
- uikit
- 프로그래머스swift
- swift reduce
- 스위프트
- 부스트코스
- Protocol
- 백준알고리즘
- swift string
- ios
- publisher
- swift문제
- swift 기초
- swift언어
- swift
- swift알고리즘
- 김프매매
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함