MST

星途 面试题库

面试题:Objective-C中NSSet的特性及常用操作

请简述Objective-C中NSSet集合类的特点,并且举例说明如何创建一个NSSet,以及如何向其中添加元素和获取元素数量。
22.4万 热度难度
编程语言Objective-C

知识考点

AI 面试

面试题答案

一键面试
  1. NSSet集合类的特点
    • 无序性:集合中的元素没有特定的顺序。
    • 唯一性:集合中的元素是唯一的,不能有重复元素。
  2. 创建一个NSSet: 可以使用NSSet类方法创建,例如:
    NSSet *set = [NSSet setWithObjects:@"element1", @"element2", nil];
    
    这里使用setWithObjects:方法,传入多个对象,以nil作为结束标志创建了一个NSSet
  3. 向NSSet中添加元素: 注意,NSSet本身是不可变的,不能直接添加元素。但是可以通过创建一个新的NSSet来达到类似添加元素的效果。例如:
    NSMutableSet *mutableSet = [NSMutableSet setWithSet:set];
    [mutableSet addObject:@"newElement"];
    NSSet *newSet = [NSSet setWithSet:mutableSet];
    
    这里先将不可变的NSSet转换为可变的NSMutableSet,然后向可变集合中添加元素,最后再将可变集合转换回不可变的NSSet
  4. 获取NSSet元素数量: 可以使用count属性获取,例如:
    NSUInteger count = set.count;
    
    这里通过count属性获取了set集合中的元素数量。