Objective-C Language
서브 스크립트
수색…
NSArray의 첨자
배열의 요소 검색 및 설정을 간단하게하기 위해 첨자를 사용할 수 있습니다. 주어진 다음 배열
NSArray *fruit = @[@"Apples", @"Bananas", @"Cherries"];
이 선
[fruit objectAtIndex: 1];
다음으로 대체 할 수 있습니다.
fruit[1];
그들은 또한 가변 배열에 요소를 설정하는 데 사용할 수 있습니다.
NSMutableArray *fruit = [@[@"Apples", @"Bananas", @"Cherries"] mutableCopy];
fruit[1] = @"Blueberries";
NSLog(@"%@", fruit[1]); //Blueberries
첨자의 인덱스가 배열의 카운트와 같은 경우, 요소는 배열에 추가됩니다.
반복 된 첨자는 중첩 배열의 요소에 액세스하는 데 사용될 수 있습니다.
NSArray *fruit = @[@"Apples", @"Bananas", @"Cherries"];
NSArray *vegetables = @[@"Avocado", @"Beans", @"Carrots"];
NSArray *produce = @[fruit, vegetables];
NSLog(@"%@", produce[0][1]); //Bananas
NSDictionary의 첨자
또한 NSDictionary와 NSMutableDictionary에서 subscript를 사용할 수 있습니다. 다음 코드는 :
NSMutableDictionary *myDictionary = [@{@"Foo": @"Bar"} mutableCopy];
[myDictionary setObject:@"Baz" forKey:@"Foo"];
NSLog(@"%@", [myDictionary objectForKey:@"Foo"]); // Baz
단축 될 수있는 것 :
NSMutableDictionary *myDictionary = [@{@"Foo": @"Bar"} mutableCopy];
myDictionary[@"Foo"] = @"Baz";
NSLog(@"%@", myDictionary[@"Foo"]); // Baz
사용자 정의 서브 스크립 션
필요한 메소드를 구현하여 자신의 클래스에 첨자를 추가 할 수 있습니다.
배열과 같은 인덱싱 된 하위 스크립트의 경우 :
- (id)objectAtIndexedSubscript:(NSUInteger)idx
- (void)setObject:(id)obj atIndexedSubscript:(NSUInteger)idx
키순 하위 스크립팅 (사전 등) :
- (id)objectForKeyedSubscript:(id)key
- (void)setObject:(id)obj forKeyedSubscript:(id <NSCopying>)key
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow