Objective-C - 直接从对象数组中调用方法

sha*_*ane 2 objective-c

我是Objective C的新手,我正在尝试直接调用对象的数组(NSArray)上的方法:

[[myPeople objectAtIndex: 0] setName: @"Shane"];
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用,并返回一个警告说"已找到多个名为'setName'的方法"

我可以这样成功地执行操作:

Person* person = [myPeople objectAtIndex: 0];
[person setName: @"Shane"];
Run Code Online (Sandbox Code Playgroud)

我的语法在第一种情况下是不正确的,还是应该使用第二段代码?还是有一种我不知道的更好的方法?

谢谢,非常感谢任何帮助

Mic*_*ick 8

您可以像这样对数组中的所有对象执行此操作:

[myPeople makeObjectsPerformSelector:@selector(setName:) withObject:@"Shane"];