MST

星途 面试题库

面试题:Objective-C中字典的常见初始化方式有哪些

请列举出Objective-C中字典(NSDictionary和NSMutableDictionary)至少三种常见的初始化方式,并给出相应的代码示例。
28.4万 热度难度
编程语言Objective-C

知识考点

AI 面试

面试题答案

一键面试
  1. 使用dictionaryWithObjectsAndKeys:方法初始化NSDictionary
    NSArray *keys = @[@"name", @"age"];
    NSArray *objects = @[@"John", @25];
    NSDictionary *dictionary = [NSDictionary dictionaryWithObjects:objects forKeys:keys];
    
  2. 使用initWithDictionary:方法从已有字典初始化NSDictionary
    NSDictionary *originalDict = @{@"name": @"Jane", @"city": @"New York"};
    NSDictionary *newDict = [[NSDictionary alloc] initWithDictionary:originalDict];
    
  3. 使用字面量初始化NSDictionary
    NSDictionary *dict = @{@"key1": @"value1", @"key2": @"value2"};
    
  4. 使用init方法创建空的NSMutableDictionary,然后使用setObject:forKey:方法添加元素
    NSMutableDictionary *mutableDict = [[NSMutableDictionary alloc] init];
    [mutableDict setObject:@"value3" forKey:@"key3"];
    
  5. 使用dictionaryWithCapacity:方法初始化NSMutableDictionary
    NSMutableDictionary *mutableDict2 = [[NSMutableDictionary alloc] initWithCapacity:5];
    [mutableDict2 setObject:@"value4" forKey:@"key4"];
    
  6. 使用字面量初始化NSMutableDictionary(iOS 11.0+)
    NSMutableDictionary *mutableDict3 = [@{@"key5": @"value5"} mutableCopy];