NSMutableArray
에 객체가 여러 번 들어 있는지 (예 : 배열에 1,2,3,1,4가 들어 있는지) 확인해야합니다. 배열에 1이 몇 번 있는지 알고 싶습니다. 나는 containsObject:
을 알고 있지만이 종류의 수표에 어떻게 사용합니까?NSMutableArray에 객체가 포함됨
0
A
답변
1
NSCountedSet
은 중복 값이 몇 번 발생했는지 추적하려는 경우 유용 할 수 있습니다.
0
빠른 방법은 NSSet으로 변환 한 다음 다시 배열로 변환하는 것입니다. NSSets는 중복을 포함 할 수 없습니다. 또는 루프를 사용하여 값을 하나씩 새 배열로 복사하고 매번 새로운 배열에 추가하기 전에 객체의 복사본이 없는지 확인하십시오.
+0
하지만 중복 값이 얼마나 많은지 알고 싶습니다. 배열에 중복 값이 몇 번 나오는지 제안 해주세요. – user1115985
0
그것은 개체 유형에 따라 다르지만 그들이있는 NSDictionary에 대한 키로 사용할 수있는 경우, 나는 각 객체 인스턴스에 대한 카운트를 포함하는의 NSNumber 객체를 가리키는 NSMutableDictionary를 만들 것입니다. 뭔가를 같이 :이 코드의 끝에
NSArray *array = whatever;
NSMutableDictionary *d = [NSMutableDictionary dictionaryWithCapacity:array.count];
for (id obj in array)
{
NSNumber *number = [d objectForKey:obj];
if (number == nil)
{
[d setObject:[NSNumber numberWithInt:1] forKey:obj];
}
else
{
[d setObject:[NSNumber numberWithInt:([number intValue]+1) forKey:obj];
}
}
, 당신은 키가 원래 객체와 값이 해당 키가 원래 존재하는 횟수를 포함 NSNumbers 있습니다있는 NSDictionary로 남아 있습니다.
관련 문제
- 1. iPhone 코어 데이터 객체가 NSMutableArray에 추가되었습니다.
- 2. xcode에 헤더 파일이 포함됨
- 3. tcl에 포함됨 8.5.9
- 4. jQuery가 두 번 포함됨
- 5. Octopress에 코드 크래시가 포함됨
- 6. 레일 옵션에 포함됨
- 7. 첨부 파일이 포함됨
- 8. 인덱스를 모르는 상태에서 NSMutableArray에 객체가 있는지 확인하고 ios에 객체가 있으면 교체하는 방법은?
- 9. NSMutableArray에 문제가 있습니까?
- 10. NSMutableArray에 개체 삽입
- 11. Grails URL 매핑에 id가 포함됨
- 12. 개체가 NSMutableArray에 저장되지 않습니다.
- 13. 다른 뷰에서 NSMutableArray에 객체 추가
- 14. NSMutableArray에 대한 설명
- 15. NSMutableArray에 값이없는 인덱스
- 16. NSMutableArray에 CGGradientRef를 저장하는 방법
- 17. 다른 클래스에서 NSMutableArray에 액세스
- 18. NSMutableArray에 nil 추가
- 19. NSTableView를 NSMutableArray에 바인딩하기
- 20. NSMutableArray에 객체를 처음으로 추가하면
- 21. NSMutableArray에 C 포인터 추가
- 22. 문제 루프에서 NSMutableArray에 추가
- 23. NSMutableArray에 누수가 있습니다.
- 24. NSMutableArray에 구조체 쓰기
- 25. NSMutableArray에 addObject가 작동하지 않습니다.
- 26. NSMutableArray의 NSMutableArray에 대한 addObject
- 27. NSMutableArray에 새 객체 추가
- 28. NSMutableArray에 NSMutableDictionary가 추가되지 않습니다.
- 29. NSMutableArray에 쓰지 않습니다.
- 30. 문자열이 NSMutableArray에 추가되지 않음
안녕하세요 ElanthiraiyanS : 정말 감사합니다. 새롭고 흥미로운 것이 있습니다. 오늘 배웁니다. 제 문제를 해결했습니다. 귀하의 도움에 감사드립니다. 나는 이것을 좋아했다 : NSCountedSet * mySet = [[NSCountedSet alloc] initWithArray : checkedBusinessIdArray]; int valueCount = [mySet countForObject : m_CheckinedBusinessID]; NSLog (@ "이 개체의 개수는 % d 개입니다., valueCount); if (valueCount> = 2) { businessCheckinCount = NO; } – user1115985
환영합니다. 행복하게 도와 줬어. – sElanthiraiyan