一、數組的簡單介紹
1.數組是一個對象,是任意類型對象地址的集合,OC的數組可以存儲不同類型的對象
2.OC的數組只能存儲對象,不能存放 簡單的數據類型(int, float, NSInteger…)除非通過一些手段把簡單數據類型變成對象。在C語言中的數組可以保存任意類型的數據。
3.存儲的內存是連續的
二、不可變數組
0.定義數組
//定義一個空數組NSArray *array1 = [NSArray array] ;array1 = @[];//空數組//通過指定對象創建數組array1 = [[NSArray alloc]initWithObjects:@"123",@"hello",@"ya",@"yuan",@"zi", nil] ;//通過簡單的方式創建數組array1 = @[@"123",@"hello",@"ya",@"yuan",@"zi"] ;
1.數組的長度
NSInteger count = array1.count ;NSLog(@"%ld",count) ;
2.判斷當前的數組中是否包含對應的對象 containsObject
BOOL isHave = [array1 containsObject:@"123"] ;if (isHave) { NSLog(@"存在") ; }else{ NSLog(@"不存在") ; } /* [A isKindOfClass:B],判斷A類是否是B的子類或者本類。 [A isMemberOfClass:B],判斷A類是否是B類(不包括子類) */
3.得到數組中最后一個對象
NSString *str = [array1 lastObject];NSLog(@"str=%@",str) ;
4.得到第一個對象
NSString *str1 = [array1 firstObject];NSLog(@"str1=%@",str1) ;
5.取出數組的指定的對象 (下標要小于數組的count)
NSString *str2 = [array1 objectAtIndex:3] ;NSLog(@"str2=%@",str2) ;
6.得到指定元素在數組中的位置 如果元素不存在則打印-1值
int index = (int)[array1 indexOfObject:@"yayuanzi"] ;int index1 = (int)[array1 indexOfObject:@"ya"] ;NSLog(@"index=%d,index=%d",index,index1) ;