iOS Swift(스위프트) : 딕셔너리
iOS 앱 개발을 위해 Swift(스위프트) 공부한 것을 메모한 글입니다.
[ 키 : 데이터 ] 저장 형식
- 저장 데이터 타입에는 제한이 없음
- 키의 타입은 해시 연산이 가능한 타입이면 거의 제한이 없다(문자, 정수, 실수 등)
- 아이템 저장할땐 정렬한 후 저장하므로 순서가 있어서 for ~ in구문 가능함
선어과 초기화
- Dictionary <키의 타입, 값의 타입> () var a = Dictionary<String, String>()
- 간결형 [키 타입 : 값 타입]() var a = [Stirng : String]()
- 타입 어노테이션을 이용한 선언 var b : Dictionary<String, String> b = Dictionary()
- 타입 어노 간결형 var b : [Stirng : String] b = [Stirng : String]() 또는 b = [:]
값 추가
- var aa = [String:String]()
aa["JP"] = "Tokyo"
딕셔너리에 값을 할당하는데 사용되는 메소드 : updatevalue(_:forKey:)
- 기존 키가 있으면 수정, 없으면 추가
- 기존 값을 수저 하면 이전 값이 결과값으로 반환됨
<딕셔너리 객체>.updateValue(<저장할 데이터>, forKey:<데이터를 참조 및 저장하는 데 사용할 키>)
# aa.updateValue("Seoul", forKey: "JP") "TOKYO"를 리턴함, 비었으면 nil
삭제 : removeValue(forKey:)
딕셔너리의 순회 탐색
for row in aa {
let (key, value) = row
print("현재 데이터는 \(key) : \(value)입니다")
}
위의 것을 간결하게
for (key, value) in aa {
print("현재 데이터는 \(key) : \(value)입니다")
} #더 많이 씀
#딕셔너리는 아이템을 내부에 저장할 때 튜플 타입으로 저장함
#출력 순서는 해시 처리 값을 기준으로 하므로 일정하지 않음
'기타' 카테고리의 다른 글
[Android] 앱에서 플레이스토어 링크 공유하는 기능 만들기(Create a playstore link sharing app in your app) (0) | 2019.06.15 |
---|---|
iOS Swift(스위프트) : 함수의 기본 개념 (0) | 2019.05.22 |
iOS Swift(스위프트) : 옵셔널 값처리 (0) | 2019.05.22 |
iOS Swift(스위프트) : 옵셔널 (0) | 2019.05.21 |
iOS Swift(스위프트) : 튜플 (0) | 2019.05.19 |
iOS Swift(스위프트) : 집합 연산 (0) | 2019.05.19 |
iOS Swift(스위프트) : 집합 순회 탐색, 동적 추가와 삭제 (0) | 2019.05.19 |
iOS Swift(스위프트) : 집합의 정의 (0) | 2019.05.19 |