正在查找NSArray中最长的字符串



我有一个NSArray,里面装满了200000个单词,我不知道每个单词的长度。我需要知道这个数组中包含的单词的最大长度是多少。

例如,如果我的数组是{"狗"、"人"、"惊人"}这个数组中包含的单词的最大长度是7("惊人")

我该怎么做?

除了所有意味着在数组上迭代的方法外,您还可以使用valueForKeyPath:,使用@max集合运算符:轻松地执行此操作

NSNumber* maxLength= [array valueForKeyPath: @"@max.length"];

你可以试试这个

查找最长的单词长度

NSArray *wordList = [NSArray arrayWithObjects:@"dog", @"person", @"amazing", nil];
int maxLen, strLen;
for(NSString *str in wordList) {
    strLen = [str length];
    if ( strLen > maxLen) {
        maxLen = strLen;
    } 
}
NSLog(@"Longest Word Length = %d", maxLen);

查找最长单词

NSArray *wordList = [NSArray arrayWithObjects:@"dog", @"person", @"amazing", nil];
NSString *longestWord = nil;
for(NSString *str in wordList) {
    if (longestWord == nil || [str length] > [longestWord length]) {
        longestWord = str;
    }
}
NSLog(@"Longest Word = %@", longestWord);

最新更新