gpt4 book ai didi

ios - 将 NSArray 元素分配给适当对象的最佳方法是什么?

转载 作者:行者123 更新时间:2023-11-28 18:35:57 24 4
gpt4 key购买 nike

如果我在 NSArray 中有来自以下 3 个类的对象,将数组元素分配给适当对象的最佳方法是什么?

@interface Simple : NSObject 
@interface Intermediate : Simple
@interface Advanced : Simple

我想遍历 NSArray,如果数组的第二个元素是 Intermediate 而第五个元素是 Advanced,我想分别将它们分配给 Intermediate 和 Advanced 的变量。这让我可以在派生类中调用未在基类中定义的方法。

让我知道是否有比让 NSArray 包含不同对象更好的方法(我仍然想知道原始问题的答案)!

最佳答案

您可以在循环时使用 isMemberOfClass: 检查对象的类或 isKindOfClass: (更多关于差异 here )。

就是说,如果——正如我怀疑的那样——这三个类共享共同的逻辑,你为什么不直接创建 Simple , IntermediateAdvance共同祖先的子类,称为 - 比方说 - Difficulty , 然后使用 Difficulty 的变量类型?

然后您可以将数组中的任何对象分配给 Difficulty与子类无关的变量。

关于ios - 将 NSArray 元素分配给适当对象的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19126516/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com