请注意,这可能是一个非常基本的问题。从JavaScript背景学习Objective-C。我想我需要额外解释下面的identifier
参数究竟是什么?
- (BOOL)isEqualTo:(NSString *)identifier;
答案 0 :(得分:2)
identifier
参数是您需要比较的字符串。例如:
NSString* yourString = @"Hello";
BOOL match = [yourString isEqualToString: @"aString"]; //currently returns NO
//handle match value according to your needs, e.g with if-else syntax.
if (match) {
//YES flow
}
else {
//NO flow
}
其中@"aString"
是一个方法参数,名为identifier
(在您的情况下),用于isEqualToString
API Foundation
框架的实现。< / p>
答案 1 :(得分:1)
identifier
是发件人(或调用者,即您在代码中)作为参数传递的对象的名称。[anObject isEqualTo: @"Something"];
在这种特殊情况下,你永远不会真正使用它,它是你发送的对象在isEqualTo
的实现内部引用的名称。您无法看到Apple代码,但您知道他们使用identifier
在该方法的上下文中命名对象。该指针必须指向NSString类的实例。