NSDictionary<TKey, TValue>
은 NSDictionary
의 일반적인 버전 일뿐입니다. 즉, 키는 모두 TKey
(귀하의 경우 NSString
)이고 값은 모두 TValue
(귀하의 경우 NSObject.
)입니다. 이렇게하면 유형 안전성이 향상됩니다. 정수로 키를 추가 할 수 없습니다. 기본 iOS 개체는 여전히 NSDictionary
입니다. 이 클래스는 일종의 "문법적 설탕"입니다. 왜냐하면 우리는 C#에서의 엄격한 입력에 익숙하고 가능한 한 그것을 사용하기를 원하기 때문입니다.
생성자를 사용하여 생성 할 수 있습니다. 여러 생성자가 있습니다. 예 : NSDictionary(TKey[] keys, TValue[] values)
은 키와 값을 매개 변수로 가져와 NSDictionary
을 만듭니다.
var keys = new[]
{
new NSString("key1"),
new NSString("key2"),
new NSString("key3"),
new NSString("key4")
};
var objects = new NSObject[]
{
// don't have to be strings... can be any NSObject.
new NSString("object1"),
new NSString("object1"),
new NSString("object1"),
new NSString("object1")
};
var dicionary = new NSDictionary<NSString, NSObject>(keys, objects);