我如何检查数组中的数据类型是什么?

时间:2011-01-17 06:49:27

标签: objective-c types

我将数据从Dictionary拉到数组。有没有方便的方法来检查数据的数据类型是什么?

1 个答案:

答案 0 :(得分:6)

您可以使用-isMemberOfClass:方法和/或-isKindOfClass:方法检查您正在查看的对象的类型。这些为您提供了确切的类或类层次结构的明确指示。 -isMemberOfClass:表示对象是否属于给定类,而-isKindOfClass:表示对象是否属于给定类,任何继承自该类的类。

根据您实际检查的内容以及原因,您应该考虑(归功于评论者大卫)更一般地查看对象是否符合给定的协议(-conformsToProtocol:),或者甚至只是响应给定的选择器(-respondsToSelector:)。你有点想要尽可能地提出类型问题,并且仍然保留结果的有用性。

那就是说,这是一个不寻常的情况 - 你真的有一个字典,它具有任意类型的值,无法从键中知道先验吗?如果您需要更广泛的设计帮助,请告诉我们有关您数据的更多信息。