我正在爲NSArray
設計一個類別,並且我實現的功能之一是設計返回數組中的字符串數目(或不是數字)。這一切工作正常,但我的問題是有關使用NSNotFound
作爲輸入數組爲零時的返回。爲NSUInteger返回NSNotFound是否明智?
蘋果的文檔狀態:
NSNotFound通常用於通過各種方法和功能 搜索串行數據項,並返回指數,如在字符串對象中的字符 或IDS在一個NSArray對象。
如果我將indexOfObject:
用於不在數組中的項目,這是完全有意義的。但是,在使用NSNotFound
的情況下,正確的用法如下所示?當然,我可以返回零並在一天內給它打電話,但看到2147483647
並立即知道問題出在哪裏會很有幫助。
- (NSUInteger)countOfStringsInArray {
NSUInteger currentCount = 0;
if ([self count] > 0) {
for (id obj in self) {
if (![obj integerValue]) {
currentCount ++;
}
}
return currentCount;
}
return NSNotFound;
}