AnyObject 与 Any(Double,Int,String)区别

* 在Swift中AnyObject对应OC中的id, 用于保存对象类型, 所以继承于NSObject的类

* 注意: Swift中的Int/Double/String等类型都是结构体, 不能用AnyObject来保存

* 但是: 如果我们使用AnyObject来保存结构体也不会报错,不报错的原因是因为系统帮我们在内部进行了转换, 例如会将Int转换为NSNumber

* 但是: 虽然不报错, 在企业开发中苹果不推荐这样使用 , 会有潜在的性能问题

* 如果在Swift开发中想保存非对象类型的数据, 可以使用Any, Any就是用来保存所有非对象类型的数据

''    let number = 1

''    let doubleValue = 1.1

''    let str = "abc"

//      let array: \[AnyObject] = \[str, number, doubleValue]

''    let array :[Any] = [str, number, doubleValue]

''    print(array)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容