1
我一直在尋找,看看我能否找到像indexOf這樣的功能。我有個數組。Obj-C,函數返回在nsarray中找到的nsstring的索引?
self.data = [[NSArray alloc] initWithObjects:@"apple", @"lemon", @"pear", nil];
尋找一個函數返回哪個會尋找檸檬和返回1?
我一直在尋找,看看我能否找到像indexOf這樣的功能。我有個數組。Obj-C,函數返回在nsarray中找到的nsstring的索引?
self.data = [[NSArray alloc] initWithObjects:@"apple", @"lemon", @"pear", nil];
尋找一個函數返回哪個會尋找檸檬和返回1?
indexOfObject:
怎麼樣?
NSUInteger index = [self.data indexOfObject:@"lemon"];
試試這個方法。
-(int)indexOfString:(NSString *)string inArray:(NSArray *)array {
for(int i=0; i<[array count]; i++) {
if ([[array objectAtIndex:i] class] == [NSString class]) {
if ([[array objectAtIndex:i] isEqualToString:string]) {
return i;
}
}
}
}
編輯:使用-indexOfObject:
的其他答案更好。
這不起作用。由於字符串是指向對象的指針,因此您無法比較它們是否相等。 – Jumhyn
'indexOfObject:'使用'isEqual:'來檢查是否相等。這對於NSStrings來說非常合適。 –
你是對的。對不起,我沒有仔細閱讀文檔。 – Jumhyn