NSArray with values

15,762

Solution 1

Use the NSArray initWithObjects method, remembering to put nil in as the last value:

NSArray *names = [[NSArray alloc] initWithObjects:@"raju", @"biju", @"ramu", nil];

Solution 2

If you need to modify an existing array, You must use NSMutableArray

NSMutableArray *name=[[NSMutableArray alloc]init]; 
[name addObject: @"raju"];
[name addObject: @"biju"];

Solution 3

NSMutableArray *name=[[NSMutableArray alloc]init];
for(int i=0;i<=10;i++)
{

    NSString *nm=[NSString stringWithFormat:@"Raju %d",i];
    [name addObject:nm];

}
Share:
15,762
Raju
Author by

Raju

Updated on June 04, 2022

Comments

  • Raju
    Raju almost 2 years

    How can I create an NSArray with values populated?

    That is to say:

    NSArray *name=[NSArray alloc];
    // insert these values: raju, biju.ramu
    
  • Jake
    Jake almost 15 years
    If he indeed wants to modify an existing array, you should use this as declaration; NSArray *name_array = [[NSArray alloc] init]; // array stuff NSMutableArray *names = [[NSMutableArray alloc] initWithArray:name_array]; [names addObject: @"raju"]; [names addObject: @"biju"];
  • TOMKA
    TOMKA about 13 years
    Alternatively, you can just use [array mutableCopy] instead of the alloc+initWithArray approach.
  • gcbrueckmann
    gcbrueckmann over 12 years
    You forgot to -init your name array and you’re trying to mutate a non-mutable type. -addObject: is an NSMutableArray method.