수색…


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