在Swift中,可以使用as关键字将Any类型转换为AnyObject类型,也可以使用as?或as!将AnyObject类型转换为Any类型。

将Any类型转换为AnyObject类型:

let anyValue: Any = "Hello"
let anyObjectValue = anyValue as AnyObject

将AnyObject类型转换为Any类型:

let anyObjectValue: AnyObject = "Hello"
let anyValue = anyObjectValue as Any

需要注意的是,as关键字会尝试进行转换,如果转换失败会导致运行时错误。为了避免运行时错误,可以使用as?进行可选转换,如果转换失败则返回nil。另外,使用as!进行强制转换,如果转换失败会导致运行时错误。

可选转换:

let anyObjectValue: AnyObject = "Hello"
let anyValue = anyObjectValue as? Any

强制转换:

let anyObjectValue: AnyObject = "Hello"
let anyValue = anyObjectValue as! Any

需要注意的是,as?和as!只能用于AnyObject类型到Any类型的转换,不能用于其他类型之间的转换

swift中any和anyobject互相转换

原文地址: http://www.cveoy.top/t/topic/hQxR 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录