NSNumber를 건너 뛰고 NSInteger로 직접 작업 할 수있는 방법이 있습니까?코어 데이터에 NSInteger 저장
답변
코어 데이터는 NSNumbers 허용됩니다. 그러나 사용자 정의 getter 및 setter를 작성하여 NSInteger 속성을 사용할 수 있습니다. mogenerator은 자동으로이를 수행하는 훌륭한 도구입니다. 모든 엔티티의 기본 속성을 사용하여 클래스를 생성합니다.
번호 NSInteger
은 개체가 아닌 긴 정수의 typedef입니다.
실제 구현 :
#if __LP64__ || NS_BUILD_32_LIKE_64
typedef long NSInteger;
typedef unsigned long NSUInteger;
#else
typedef int NSInteger;
typedef unsigned int NSUInteger;
#endif
NSNumber
클래스 다음 속성 목록과 코어 데이터로 저장 될 수있는 개체로 프리미티브 타입 (int
, float
등)의 밀봉을 허용한다.
예 :
float pi = 3.1415;
NSNumber *piNumber = [NSNumber numberWithFloat:pi];
그런 다음에 쉽게 액세스하고/또는 NSNumber
객체에 저장된 값 변환 할 수 있습니다
int piAsInteger = [piNumber intValue];
합리적인 답변이지만이 특정 질문에는 해당되지 않습니다. – Abizern
예, 그렇습니다. 코어 데이터는 * objects *만을 보유하기 때문에 NSNumber 클래스가 필요한 이유입니다. 신뢰할 수없는 타사 유틸리티가없는 다른 방법은 없으며 모든 업데이트가 중단 될 수 있습니다. –
그는 NSNumber를 건너 뛰고 NSInteger를 사용할 수 있는지 질문했습니다. 코어 데이터에 객체 만 저장할 수 있기 때문에 대답은 '아니오'입니다. NSNumber가 값을 캡슐화하는 방법에 대한 설명은 불필요합니다. 그리고 다른 누군가가 나와 의견이 맞지 않는다면 자유롭게 답을 상상할 수 있습니다. – Abizern
- 1. 코어 데이터에 NSMutableArray 저장
- 2. 코어 데이터에 음수 저장
- 3. XML 데이터를 코어 데이터에 저장
- 4. mkcoordinateregion을 직렬화하여 코어 데이터에 저장 하시겠습니까?
- 5. 여러 데이터에 코어 데이터 저장 및로드
- 6. 얼마나 자주 코어 데이터에 저장해야합니까?
- 7. 코어 데이터에 상호 친구 나열하기
- 8. 코어 데이터에 엔티티 참조 추가
- 9. 코어 데이터에 데이터를로드하는 방법은 무엇입니까?
- 10. 시간이없는 날짜를 코어 데이터에 저장하는 방법
- 11. 코어 데이터에 UIImage 저장하기. NSValueTransformers의 문제
- 12. 코어 데이터 불필요한 데이터 저장
- 13. 아이폰의 코어 데이터에 일대 다 관계 설정하기
- 14. 코어 데이터에 CGColor를 저장하는 방법은 무엇입니까?
- 15. 는 NSInteger
- 16. NSInteger 출시
- 17. NSInteger! = nil
- 18. UIBarButtonItem 태그의 NSArray (NSInteger)
- 19. gdb에 코어 파일 저장
- 20. 코어 데이터로 원격 데이터에 액세스하기위한 패턴은 무엇입니까?
- 21. iPhone 코어 데이터에 새 객체 삽입
- 22. 코어 데이터의 다국어 데이터에 대한 우수 사례
- 23. 데이터를 편집하여 코어 데이터에 저장하는 방법
- 24. 코어 데이터에 의해 구동되는 바인딩을 가진 NSOutlineView
- 25. UIDatePicker 코어 데이터에 시간을 저장하지 않습니다.
- 26. 다 대다 관계 코어 데이터에 대한 술어
- 27. 코어 데이터에 데이터 모델을 설정하는 데 도움이됩니다.
- 28. 코어 데이터에 많은 텍스트를 저장하는 방법
- 29. 코어 데이터에 시간 만 저장하는 UIDatePicker
- 30. 코어 데이터에 새 관계 데이터 삽입
또한 Xcode의 현재 버전 (이 주석의 4.3.2)에서 NSManagedObject 서브 클래스를 생성 할 때 "원시 데이터 형식에 대한 스칼라 속성 사용"을 선택하면 컴파일러에서 "그냥 알기"만합니다. 합성 접근자는 NSNumber와 적절한 스칼라로 승격/강등 시키십시오. 예를 들어 "Integer 32"는 생성 된 .h 파일에서 int32_t로 선언되며 단순히 코드의 속성에 정수를 할당 할 수 있습니다. –