Swift集合类型全解析
1. 数组类型转换
在Swift中,现在可以返回 String 类型的数组。以前,这些数组是无类型的,需要手动将其转换为 String 数组。不过,轻量级泛型并非无处不在。例如,可能会从磁盘上的 .plist 文件中读取数组,或者从 UserDefaults 中获取数组,甚至可能会处理尚未更新以使用轻量级泛型的Objective - C API。在这些情况下,最终可能会得到一个普通的 NSArray 或 Any 类型的Swift数组。
以下是一个Objective - C类的示例,其中一个方法返回的 NSArray 未标记元素类型:
@implementation Pep
- (NSArray*) boys {
return @[@"Manny", @"Moe", @"Jack"];
}
@end
要调用该方法并对结果进行有效处理,需要将结果转换为 String 数组。如果确定转换可行,可以强制转换:
let p = Pep()
let boys = p.boys() as! [String]
但要注意,进行强制转换时要确保数组中的所有元素都能转换为目标类型,否则转换失败会导致程序崩溃。对于有问题的元
超级会员免费看
订阅专栏 解锁全文
43

被折叠的 条评论
为什么被折叠?



