200,000 語で満たされた NSArray があり、各語の長さがわかりません。その配列に含まれる単語の最大長を知る必要があります。
たとえば、配列が {"dog","person","amazing"} の場合、この配列に含まれる単語の最大長は 7 ("amazing") になります。
どうすればいいですか?
200,000 語で満たされた NSArray があり、各語の長さがわかりません。その配列に含まれる単語の最大長を知る必要があります。
たとえば、配列が {"dog","person","amazing"} の場合、この配列に含まれる単語の最大長は 7 ("amazing") になります。
どうすればいいですか?
配列の繰り返しを意味するすべてのメソッドに加えて、コレクション演算子 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);