码迷,mamicode.com
首页 > 移动开发 > 详细

ios 集合总结

时间:2015-05-18 15:57:50      阅读:330      评论:0      收藏:0      [点我收藏+]

标签:

NSArray 用于对象有序集合(相当于是数组)

NSSet 用于对象无序集合

NSDictionary 用于键值映射 以上三种集合类是不可变的(一旦初始化后,不能再动态的增加或删除元素),如果需要用到可变集合,则需要用到下面几个类:

NSMutableArray

NSMutableSet

NSMutableDictionary

实例DEMO:

1:NSArray 初始化和遍历迭代 

技术分享
1)NSArray的初始化

           NSArray的便利初始化函数: -(id) initWithObjects : (id) firstObject, ....;

           NSArray的便利构造器: +(id) arrayWithObjects: (id) firstObject, ...;

           demo:

          //NSArray的便利初始化

          NSArray *array1 = [[NSArray alloc] initWithObjects:@"aaa", @"bbb", @"ccc", nil];

          //NSArray的便利构造器

          NSArray *array2 = [NSArray arrayWithObjects:@"111", @"222", @"333", nil];

    (2)获取数组元素的个数和数组的元素

           //获取数组元素的个数和元素

           int count = (int)[array1 count];

          //获取相应索引的元素

          id element = [array1 objectAtIndex:0];

          NSLog(@"array1_count = %d, array[0] = %@", count, element);


     (3)迭代:


     //封装遍历数组的函数


      void array_display(id array)

      {

       for (int i = 0 ; i < [array count]; i++) {

          id temp = [array objectAtIndex:i];

          NSLog(@"%@", temp);

      }

    }
View Code

 2:NSMutableArray初始化和遍历迭代 

技术分享
 2.可变数组:NSMutableArray
 
NSArray的容量是固定的,而NSMutableArray的容量是可变的,我们可以在NSMutableArray实例化的时候先初始化一个容量,不过这个容量不是固定的,不够的时候会自动增加。NSMutableArray是NSArray的子类,是对NSArray的一个扩充。
 
(1) NSMutableArray的初始化
 
     NSMutableArray的便利初始化函数:-(id) initWithCapacity :  (NSUInteger)    numItems;
 
     NSMutableArray的便利构造器:+(id) arrayWithCapacity: (NSUInteger) numItems;
 
  demo:

      //NSMutableArray的便利初始化
       NSMutableArray *array3 = [[NSMutableArray alloc] initWithCapacity:3];
      //NSMutableArray的便利构造器
       NSMutableArray *array4 = [NSMutableArray arrayWithCapacity:3];

 (2)元素的添加和删除
 
                增加元素: -(void) addObject: (id) anObject; --往数组的尾部添加元素
 
                删除全部内容: -(void) removeAllObjects;
 
                删除最后一个元素: -(void) removeLastObject;
 
                通过索引删除元素: -(void) removeObjectAtIndex: (NSUInteger) index;
 
                删除任意一个元素: -(void) removeObject : (id)object;

  demo:

 
//初始化NSMutableArray
NSMutableArray *array = [NSMutableArray arrayWithObjects:@"111", @"222", @"333", nil];
//添加元素
[array addObject:@"444"];
 
//移除元素
[array removeObject:@"111"];
 
//移除最后一个元素
[array removeLastObject];
 
//按照索引删除元素
[array removeObjectAtIndex:0];
 
array_display(array);
 
 删除任意一个元素: -(void) removeObject : (id)object;

//初始化NSMutableArray
NSMutableArray *array = [NSMutableArray arrayWithObjects:@"111", @"222", @"333", nil];
//添加元素
[array addObject:@"444"];
 
//移除元素
[array removeObject:@"111"];
 
//移除最后一个元素
[array removeLastObject];
 
//按照索引删除元素
[array removeObjectAtIndex:0];
 
array_display(array);
View Code

 

 

 

 

ios 集合总结

标签:

原文地址:http://www.cnblogs.com/yujian-bcq/p/4511929.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!