2009-10-30 80 views
0

我只是好奇,如果有一种方法来交换这个例子中的两个蜇伤?isEqualToString是否可以交换项目?

// This works 
for(eachArtist in artistCollection) { 
if([objFirName isEqualToString: [eachArtist firName]]) NSLog(@"DELETE ...."); 
} 

我想要做的是(见下文)可以做到这一点,或者是上述唯一的方法吗?

[eachArtist firName isEqualToString: objFirName] 

eachArtist.firName是一个对象数组中的NSString,objFirName是一个香草NSString。

加里

+0

第二行不正确Objective-C你是什么意思[[每个艺术家firName] isEqualToString:objFirName] – Mark 2009-10-30 23:32:23

+0

马克,这就是我以后,我是一个木偶,我忘记包围第一个参数。对不起,仍然试图抓住Objective-C。 – fuzzygoat 2009-10-30 23:46:41

回答

0

如果您在Artist实现合成的firName财产,这两种方法是等效的。

即:

[eachArtist firName] 

相同

eachArtist.firName 

如果@property@synthesize -d在Artist.mreadwriteArtist.hreadonly

由于您正在执行一个isEqualToString谓词,而不是一个小于或大于谓词,因此谓词中元素的顺序无关紧要。

在数学术语中,A = B当且仅当B = A时,用于比较字符串。

+0

恰恰恰恰是我想要的。 @Alex Reynolds,非常感谢,想要交换职位的唯一原因是为了让代码读得更好。 – fuzzygoat 2009-10-30 23:50:44

相关问题