Objective-c數組(NSArray)和集合(NSSet)


一.NSArray 是數組類。在數組中,必須以nil結束。NSArray數組類上的方法有:

   +arrayWithObjects:(id) firstobj;//聲明數組。后面是各個元素 ,以nil結束

   -(unsigned)count;//數組中的元素個數

   -(id) objectAtIndex:(unsigned)index;//指定位置的元素

   -(unsigned) indexofObject:(id) object;//指定數組中的位置

   NsArray *city=[NSArray arrayWithObjects:@"北京",@“上海”,@”湖北“,nil];

   if([city indexofObject:@"杭州"]==NSNotFound){

       NSLog(@”杭州未在其中“);

 

     }

 

二.NSArray是一個靜態的數組,不能往數組動態添加元素。你可以使用NSMutableArray來動態管理數組。NSMutableArray是NSArray的子類。NSMutableArray的常用方法中:

+(NSMutableArray *)array;//聲明一個數組

 (void)addObject:(id)object;//添加一個元素

 (void)removeObject:(id)object;//從數組中刪除指定的元素

 (void) removeAllObjects;//刪除所有元素

 (void)insertObject:(id)object atIndex:(unsigned)index;//在指定位置添加新元素

  例如:執行完下面代碼后的數組只包含兩個元素:”上海“和“湖北”。

    NSmutableArray *city=【【NSMutableArray alloc】init];

    [city addObject:@"北京"];

    [city addObject:@"上海"];

    [city addObject:@"湖北"]; 

    [city  removeObjectAtIndex:1];

  同數組相比,集合是一個無序的;不同元素的集合。數組中的元素可以重復,但是集合不同。在Objective—C上,    NSSet類實現了集合的概念,其方法有:

+setWithObjects:(id) firstobj,...;//聲明集合,后面是各個元素,以nil結束

-(unsigned)count;//返回集合的個數

-(BOOL)containsObject:(id)object;//判斷指定對象是否包含在集合中

   同數組類似,NSSet本身也是不可修改的集合。NSMutableSet是相應的可修改的集合,其方法有:

   +(NSMutableSet * )set;//聲明一個集合

   - (void)addObject:(id)object;//添加一個元素到集合
   -(void)removeObject(id)object;//從集合中刪除一個元素

   -(void)removeAllObjects;//刪除集合中的所有元素

   -(void)intersectSet:(NSSet *)otherSet;//;兩個集合的交集

  //集合-指定集合(即:所有不在既定集合中的元素)

   -(void)minusSet:(NSSet *)otherSet;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM