微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swift – 打开Any.Type

我正试图在 swift中打开一个类型.我不是试图打开对象实例的类型,我试图打开实际类型本身.例如:

let t: Any.Type = Int.self
 switch t {
 case is Int:
     print("int")
 default:
     print("other")
 }

我希望这打印“int”但它属于认情况.

我可以使用if语句完成所需的结果,如,

if t == Int.self
 {
     print("t is an int")
 }

但是我希望通过开关来实现这一目标.我读过Apple的’Type Casting’文档,可能还不够彻底,因为我看不到在这里应用它的方法.

解决方法

Xcode在上述情况下生成以下警告:“从’Any.Type’转换为无关的Type’Int’总是失败”,这提示了正确的方法

let t: Any.Type = Int.self
 switch t {
 case is Int.Type:
     print("Int")
 default:
     print("Other")
 }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐