[arcjeen] 2.swift 자료형 2 (튜플, Dictionary)
- 튜플
집단 자료형으로써 한가지타입의 아이템만 저장할 수 있는 배열이나 딕셔너리와는 다르게 하나의 튜플에 여러가지 타입의 아이템을 저장할 수 있다. 선언된 튜플은 상수적 성격을 띄게되며 값의 추가 삭제등 일체의 변경이 불가하다. 상수로선언된 구조체와 비슷하다고 보아도 될 것 같다.
-Swift
var tpl01 :(Int, Int) = (100, 200);
let (a,b) = tpl01; // a,b라는 상수에 튜플 변수 할당
* 튜플은 순회특성도 지원하지 않는다. 데이터를 읽어오거나 크기를 계산할 수 있는 속성또한 없다.
튜플이 가장 쓸만 한 곳은 함수의 반환형이 아닐까 생각한다.
- Dictionary
- Objective-c
NSDictionary *dict =
[[NSDictionary alloc]initWithObjectsAndKeys:@"value",@"key",nil];
//초기화방법 1
NSDictionary *dict2 = @{
@"key":@"Value"
}; //초기화방법 2
NSString *valueStr = [dict valueforKey:@"key"];
- Swift
var Capital = ["KR":"Seoul", "EN":"London"]; //초기화1
var capital : Dictionary <String, String>; // 선언
capital["jp"] = "tokyo"; //키:벨류 삽입
capital.updateValue("busan","KR");
// 키:벨류 삽입 및 수정. 이미 해당키에 대한 벨류가 있다면 벨류를 반환 없다면 nil반환
capital.["jp"] = "nil";
captal.removeValueForKey("jp");
//해당 키에대한 벨류 삭제. 벨류값 반환
var valueStr = capital["KR"];