2016-08-11 9 views
1

나는 가장 높은 가치를 찾고자하는 숫자가 Array입니다. 다음과 같이 나는이 일을하고있다 :NSArray valueForKey : @ "@ max.self"?

NSNumber *test = [fuelConsumption valueForKey:@"@max.self"]; 

나는 다음 실행, 나는 다음과 같은 오류되게하고 빌드 할 때 :

Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<__NSArrayM 0x7b26e8d0> valueForUndefinedKey:]: this class is not key value coding-compliant for the key max.self.'

내가 이해에서,이 일이 값을 찾습니다 방법이다. 이것이 잘못된 것일 수있는 아이디어가 있습니까?

내가 iOS9.x 프로그래밍 및 엑스 코드 7.3.1

답변

0

을 사용하고 당신은 더 약 Collection Operators 읽기 사과 documentation를 들어 그

NSNumber *test = [fuelConsumption valueForKeyPath:@"@max.self"]; 

에 대한 valueForKeyPath를 사용해야합니다.

1
당신이 valueForKey: NSString을 줄 때, 때문에 예외를 얻고있다

, 그것은 objectForKey:를 호출하고 문자열이 @로 시작하는 경우는 예외를 발생시킬 수 있습니다 valueForUndefinedKey:를 호출 할 수 [super valueForKey:]를 호출합니다.

그래서, 같은 valueForKeyPath:valueForKey:을 변경

NSNumber *test = [fuelConsumption valueForKeyPath:@"@max.self"]; 

보다 약 kvc-collection-operators 읽어보십시오.