Difference between revisions of "NSArray"
Jump to navigation
Jump to search
(NSArray of course is in Foundation, not AppKit...) |
(→Creating Arrays: added →See Also: added) |
||
| Line 1: | Line 1: | ||
| − | + | [http://www.gnustep.org/resources/documentation/Developer/Base/Reference/NSArray.html#class$NSArray NSArray] is a immutable, integer indexed, array of objects. | |
| + | |||
| + | == Creating Arrays == | ||
| + | |||
| + | === From a List === | ||
| + | |||
| + | The most common method to create a array is to just pass it a list: | ||
| + | |||
| + | NSArray *array = [NSArray arrayWithObjects: @"John", @"Bob", [NSNull null], @"Jane"]; | ||
| + | |||
| + | When creating arrays remember that any kind of object can be included, but only objects can be included. | ||
| + | |||
| + | === Copy Array === | ||
| + | |||
| + | A copy of an array can be done simply by doing the following: | ||
| + | |||
| + | NSArray *array1 = [NSArray arrayWithObjects: @"John", @"Bob", [NSNull null], @"Jane"]; | ||
| + | NSArray *array2 = [NSArray arrayWithArray: array1]; | ||
| + | |||
| + | === From a Array === | ||
| + | |||
| + | An array object can be made with a regular array of objects, as shown in the following example: | ||
| + | |||
| + | id array1[4] = {@"John", @"Bob", [NSNull null], @"Jane"}; | ||
| + | NSArray *array2 = [NSArray arrayWithObjects: array1 count: 4]; | ||
| + | |||
| + | Count being the number of objects from the array to be used. | ||
== Code chunks == | == Code chunks == | ||
| Line 26: | Line 52: | ||
return AUTORELEASE(retval); | return AUTORELEASE(retval); | ||
} | } | ||
| + | |||
| + | == See Also == | ||
| + | |||
| + | *[[NSMutableArray]] | ||
| + | *[[NSEnumerator]] | ||
[[Category:Foundation]] | [[Category:Foundation]] | ||
[[Category:Snippets]] | [[Category:Snippets]] | ||
Revision as of 00:13, 5 April 2007
NSArray is a immutable, integer indexed, array of objects.
Creating Arrays
From a List
The most common method to create a array is to just pass it a list:
NSArray *array = [NSArray arrayWithObjects: @"John", @"Bob", [NSNull null], @"Jane"];
When creating arrays remember that any kind of object can be included, but only objects can be included.
Copy Array
A copy of an array can be done simply by doing the following:
NSArray *array1 = [NSArray arrayWithObjects: @"John", @"Bob", [NSNull null], @"Jane"]; NSArray *array2 = [NSArray arrayWithArray: array1];
From a Array
An array object can be made with a regular array of objects, as shown in the following example:
id array1[4] = {@"John", @"Bob", [NSNull null], @"Jane"};
NSArray *array2 = [NSArray arrayWithObjects: array1 count: 4];
Count being the number of objects from the array to be used.
Code chunks
Create index dictionary
Following NSArray category method creates a dictionary which works as an index by an attribute of contained objects. It uses Key Value Coding.
- (NSDictionary *)indexDictionaryForKey:(NSString *)key
{
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
NSDictionary *retval;
NSEnumerator *enumerator;
id object;
enumerator = [self objectEnumerator];
while( (object = [enumerator nextObject]) )
{
[dict setObject:object forKey:[object valueForKey:key]];
}
retval = [[NSDictionary alloc] initWithDictionary:dict];
RELEASE(dict);
return AUTORELEASE(retval);
}