티스토리 뷰

NSArray

create : NSArray *arr = [NSArray arrayWithObjects: ... , nil];
[배열이름 count] => 배열의 요소 개수 리턴
[배열이름 objectAtIndex: 인덱스] : 메서드를 이용해서 리턴 받을 수 있습니다. -> 몇 번째껄 가져올껀지 쓰면 됨
[배열이름 indexOfObject:(id)anObject] : anObject가 배열에 있으면 첫번째 위치를 리턴하고 찾지 못하면 NSNotFound를 리턴합니다.
-(id)lastObject: 마지막 인스턴스 리턴
-(BOOL)isEqualToArray:(id)anObject : 배열의 요소 개수와 모든 멤버가 동일하면 YES 아니면 NO를 리턴
-(id)firstObjectCommonWithArray:(NSArray *)otherArray : 일치하는 첫번째 인스턴스 리턴
-(NSArray *)arrayByAddingObject:(id)anObject : 인스턴스를 추가해서 만들어진 배열을 리턴
-(NSArray *)arrayByAddingObjectsFromArray:(NSArray *)anArray : 배열을 추가해서 만들어진 배열을 리턴
-(NSArray *)sortedArrayUsingSelector:(SEL)comparator : comparator에 지정된 메서드를 기준으로 오름차순 정렬하여 리턴

* sorting을 하려면 아래 메서드를 구현해야 함
- (NSComparisonResult) 메서드명 : (자신의 클래스타입 *)객체;
Foundation 클래스(NSNumber, NSString)은 비교하는 메서드가 있으므로 이 메서드로 가능
compare : 대소문자 구별, 소문자는 대문자 뒤로 감
caseInsensitiveCompare : 대소문자 구별 안함
일반 클래스인 경우는 자신의 타입과 비교해서 NSComparisonResult로 리턴하는 메서드가 있어야가능합니다.

NSMutableArrays
-(id)initWithCapacity:(NSUinteger)numItems : numItems의 개수를 가진 배열을 생성
-(void)addObject:(id)anObject : anObject를 마지막에 추가
-(void)addObjectsFromArray:(NSArray *)otherArray : otherArray를 추가
-(void)insertObject:(id)anObject atIndex:(NSUinter)index : index 번째에 anObject 추가
-(void)replaceObjectAtIndex:(NSUinter)index withObject:(id)anObject : index 번째에 Object를 anObject로 변경
-(void)setArray:(NSArray *)otherArray : 모든 내용을 초기화하고 otherArray로 변경
-(void)removeAllObjects : 모든 요소 제거
-(void)removeLastObjects : 마지막 요소 제거
-(void)removeObjectAtIndex : (NSUinter)index   :   index 번째 제거
-(void)removeObject:(id)anObject   :   anObject 찾아서 제거



NSString
+(id)stringWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2) : 문자열 생성  / c언어의 printf()과 같이 인수를 이용해, 새로운 문자열을 만들어서 반환합니다.
- (NSUInteger)length " 문자열의 문자수를 반환합니다. (유니코드 다국어 표준을 사용하여, 1byte 이상의 문자도 정상적으로 반환됩니다. strlen()의 byte 계산 없이, 한글도 정상적으로 반환 됨)
- (BOOL)isEqualToString:(NSString *)aString :자신과 인수로 받은 문자열을 비교해서 YES, NO 를 반환합니다. '==' 을 사용하면 문자열이 아니라, 객체의 포인터를 비교합니다.
- (NSComparisonResult)compare:(NSString *)string options:(NSStringCompareOptions)mask : 파라미터에 or 연산자 사용가능함.
(NSCaseInsensitiveSearch : 대소문자 무시 / NSLiteralSearch : 대소문자 구분 / NSNumericSearch : 숫자를 아스키값이 아니라, 실제 숫자로 처리 / 두 문자열이 같으면 NSOrderedSame을 반환)
- (BOOL)hasPrefix:(NSString *)aString : 문자열 앞부분과 인수 비교 (동일한지 아닌지)
- (BOOL)hasSuffix:(NSString *)aString : 문자열 끝부분과 인수 비교 (동일한지 아닌지)
- (NSRange)rangeOfString:(NSString *)aString : 문자열 전체에서 특정문자가 있는지 검색
(위에 compare에서 사용한 옵션 사용 가능 / 찾으려는 문자열이 없으면 NSNotFound 반환)
- (NSString *)uppercaseString : 문자열에 포함된 모든 문자를 대문자로 변경합니다.
- (NSString *)lowercaseString : 문자열에 포함된 모든 문자를 소문자로 변경합니다.
- (id) [intValue, floatValue, doubleValue ..] : NSString 에서 해당 value 로 형변환
 

NSNumber

메서드들은 numberWithLong:과 numberWithFloat:처럼 numberWith로 시작하고, 그 뒤에 데이터 형이 붙는다. (메모리 관리가 필요없다)
게다가 인스턴스 메서드를 사용하여 이미 생성해 놓은 NSNumber 객체의 값을 원하는 대로 지정할 수 있다.
인스턴스 메서드들은 initWithLong:과 initWithFloat:처럼 모두 initWith로 시작한다.



'iOS 개발 > ObjectiveC' 카테고리의 다른 글

delegate, block 에서의 Retain Cycle (ARC)  (0) 2016.11.09
GCD 기본  (0) 2016.07.24
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함