从强制解包看 Swift 的设计 不知道大家有没有发现,在一个 Objective-C 和 Swift 混编的 App 中,当把一个 OC 中的参数转到 Swift 时,Swift 会自动把这个变量进行强制解包.举个例子,我在 OC 中定义这样一个变量: @property (nonatomic, copy) NSString *foo; 它转成 Swift 就变成了这样: var foo: String! 这样看上去合情合理.Swift 中有 String? 和 String! 两种形式,但…