jueves, 6 de diciembre de 2012


Creación y Uso de NSArray ,NSMutableArray ,NSDictionary y NSMutableDictionary.

NSArray:
Para crear un arras que no puede ser modificado:

NSArray *array =[NSArray arrayWithObjects:@"Uno",@"Dos",@"Tres",@"Cuatro", nil];

Muestra por consola el objeto situado en la posición tres:(recordar que empieza a contar desde :0,1,2…):
NSLog(@"El Objeto en la posición 3 es:  %@",[array objectAtIndex:2]);
Esto da como resultado:El Objeto en la posición 3 es:  Tres.

Para saber el numero de objetos de un Array:
NSLog(@"Numero objetos Array %i",[array count]);


NSMutableArray:

Crear un NSMutableArray , que es un Array que se puede modificar.

NSMutableArray *mutablearray =[NSMutableArray arrayWithObjects:@"Primero",@"Segundo",@"Tercero",@"Cuarto", nil];

Para añadir un objeto al Array:
[mutablearray addObject:@"Quinto"];

Para Insertar un objeto en un lugar determinado del array teniendo en cuenta que empieza a contar desde cero:
[mutablearray insertObject:@"Septimo" atIndex:2];

Para reemplazr un objeto en un lugar determinado:
[mutablearray replaceObjectAtIndex:0 withObject:@"Dos"];

Para borrar un objeto determinado:
[mutablearray removeObjectAtIndex:2];

También se puede borrar por el nombre del objeto:
[mutablearray removeObject:@"Primero"];

Borrar todos los Objetos del Array:
[mutablearray removeAllObjects];

Para saber el numero de objetos que tiene un Array o Mutablearray usamos la palabra reservada "count":

 NSLog(@"Numero Objetos Mutablearray %i",mutablearray.count);
Tiene muchos métodos mas pero estos son los mas usados.

NSDictionary.
Crear un NSDictionary:
NSDictionary *dictionary = [NSDictionary dictionaryWithObjects:mutablearray forKeys:array];
Notese que hemos usado al array creado anteriormente como indice y el mutableArray también creado anteriormente como forKey.
Si ponemos un NSLog el resultado seria este:

NSLog(@"Esto es el Dictionary %@",dictionary);
Esto es el Dictionary {
    Cuatro = Cuarto;
    Dos = Segundo;
    Tres = Tercero;
    Uno = Primero;
Notese que lo ordena por orden alfabetico.

Asi podemos sacar por consola el ForKey de de un objeto del Dictionary, esto nos daría como resultado:Tercero
NSLog(@"%@",[dictionary objectForKey:@"Tres"]);



NSMutableDictionary:

Creamos un NSMutableArray vacio:

NSMutableDictionary * mutableDictionary =[[NSMutableDictionary alloc]init];
Lo rellenamos.
Al forKey:"El mejor programador del mundo mundial…" (No tengo abuela…jejejeje) le metemos el SetValue "Promedi"

[mutableDictionary setValue:@"Promedi" forKey:@"El mejor programador del mundo mundial..."];

NSLog(@"%@",mutableDictionary);

Resultado:

"El mejor programador del mundo mundial..." = Promedi;


[mutableDictionary setValue:array forKey:@"Prueba del NSMUtableArray."];
    NSLog(@"%@",mutableDictionary);
Resultado:
 "Prueba del NSMUtableArray." =     (
        Uno,
        Dos,
        Tres,
        Cuatro
    );