gpt4 book ai didi

ios - 如何找到 NSArray 具有的对象的类型/类名?

转载 作者:行者123 更新时间:2023-12-01 18:15:37 25 4
gpt4 key购买 nike

我知道如何通过在对象上使用 isKindOfClass 来查找数组中每个对象的类。就我而言,该数组将包含同一类的所有对象,我正在尝试查找类名。下面的描述将有助于更好地理解这个问题:

我有 2 个自定义类和 2 个具有这些类对象的数组:

类名 : ClassA
数组保存 ClassA 的对象 : NSArray *arrayA = [NSArray arrayWithObjects:a1, a2, a3, nil];
类名 : ClassB
数组持有 ClassB 的对象: NSArray *arrayB = [NSArray arrayWithObjects:b1, b2, b3, nil];
我的 Controller ControllerA 有一个接受 NSArray 作为输入的方法。

@implementation ControllerA

- (void)someMthod:(NSArray *)myArrayOfObjects
{
// Print the custom class name whose objects are present inside the array.
}
@end

因此,当我使用 arrayA 作为输入数组调用此方法时,它应该打印 ClassA 而不迭代数组内的所有对象。当我通过传递 arrayB 作为输入来调用它时,它应该打印 ClassB 而不遍历数组中的所有对象。

数组中的所有对象都属于 ClassA 或 ClassB。它不会包含来自两个类的对象的组合,如 [NSArray arrayWithObjects:a1, a2, b1, b2, nil];
有没有一种直接的方法来实现我正在寻找的东西,而不是遍历数组的每个对象并在其上使用 isKindOfClass 来查找它的类?

最佳答案

如果您确定数组中的所有对象都是数组中第一项的类型,那么它还不错。

NSString *className = NSStringFromClass([[myArrayOfObjects firstObject] class]);

关于ios - 如何找到 NSArray 具有的对象的类型/类名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22276885/

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