Swift 3 - 如何在运行时确定键和值类型?

时间:2016-11-24 21:55:48

标签: dictionary swift3 nsdictionary

我们如何在运行时找到运行时NSDictionary变量的键和值类型?

e.g。

var dict:NSDictionary = [:]

// How to find out what the type is for the key and value?

1 个答案:

答案 0 :(得分:2)

你应该在Swift中使用NSDictionary是非常罕见的。没有"键和值类型"对于NSDictionary。每个单独的元素可能具有不同的类型(ObjC字典仅按惯例而非按要求一致)。一般来说,如果你需要这个,你就走错了路。您几乎总是希望使用Swift Dictionary而不是NSDictionary

也就是说,在这种情况下,答案是密钥为AnyHashable,值为AnyObject。这是您拥有的所有类型信息。除此之外,你只需要查询对象。