문제

객관적인 C에 두 개의 배열이 있으며 어떤 색인이 어떤 인덱스를 찾아서 같은 장소에 삽입 할 수 있습니다. 예를 들어, "이름 배열"과 "나이 배열"이 있다고 가정 해 봅시다. "이름 배열"에 어떤 색인 "찰리"가 있는지 어떻게 알 수 있으므로 "Age"배열에 나이를 어디에 삽입 해야할지 알 수 있습니까?

감사

도움이 되었습니까?

해결책

-[NSArray indexOfObject:] 논리적 선택 인 것 같습니다.

다른 팁

코코아에서 평행 배열은 파멸과 폐허의 경로입니다. 바인딩으로 효과적으로 사용할 수 없으므로 바인딩이 존재하지 않는 것처럼 많은 접착제 코드를 작성해야합니다. 또한, 당신은 당신이 그것을 구현하기 전에 가질 수있는 미래의 사과 스크립트/스크립팅 브리지 지원을 죽이고 있습니다.

올바른 방법은 name 그리고 age 속성, 해당 클래스의 단일 배열이 있습니다. 그런 다음 이름이나 나이로 항목을 찾으려면 사용하십시오. NSPredicate 배열을 필터링하고 indexOfObjectIdenticalTo: 메인 배열의 필터링 배열에서 각 항목의 인덱스를 찾으려면.

차이 indexOfObject: 그리고 indexOfObjectIdenticalTo: 전자가 보낼 것입니다 isEqual: 각 객체가 찾고있는 것인지 여부를 결정하는 메시지, 후자는 전달한 특정 객체 만 찾을 수 있습니다. 따라서 사용할 수 있습니다. indexOfObject: 배열에 있지 않지만 배열에서 동일한 객체를 찾기 위해 객체와 동일합니다.

문자열을 기반으로 조회를하는 경우 NSDictionary도 사용하고 싶을 수도 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top