標籤:ar for 檔案 log on c new ad 應用
數組也分成可變和不可變,這個和NSString一樣,初始化的方法也類似,對元素的操作也類似,具體如下。
多練習幾遍,知道每個代表什麼意思即可。開發項目時再加深印象。
//不可變數組 //數組的元素只能是對象,如果是int和float的話,就用NSNumber轉換一下才能用 //初始化的幾種方式,可以一個元素、多個元素、從已有組複製、從檔案、網址等 NSArray *arr1=[NSArray arrayWithObject:@"hello"]; NSArray *arr2=[NSArray arrayWithObjects:@"hello",@"world", nil]; NSArray *arr3=[NSArray arrayWithArray:arr2]; NSArray *arr4=[NSArray arrayWithContentsOfFile:<#(NSString *)#>]; NSArray *arr5=[NSArray arrayWithContentsOfURL:<#(NSURL *)#>]; //當然,最基本但是最複雜的初始化是這個樣子的 NSArray *arr6=[[NSArray alloc]initWithObjects:@"hello",@"world", nil]; //擷取數組的個數 NSInteger count=[arr2 count]; //根據下標訪問裡面的對象 NSString *arrObj=[arr2 objectAtIndex:2]; //給數組增減新元素(對象) NSArray *arrNew=[arr2 arrayByAddingObject:@"yes"]; //把數組裡元素利用串連符串連成字串 NSString *strNew=[arr2 componentsJoinedByString:@"-"]; //查詢數組中是否包含某一元素,YES和NO BOOL isContain=[arr2 containsObject:@"hello"]; //查詢並返回位置,如沒有則是NSNotFound NSInteger index=[arr2 indexOfObject:@"hello"]; //擷取最後一個元素 NSString *lastEle=[arr2 lastObject]; //可變數組,5個元素 NSMutableArray *mutArr=[[NSMutableArray alloc]initWithCapacity:5]; //添加一個元素 [mutArr addObject:@"hell"]; //指定位置插入一個元素 [mutArr insertObject:@"word" atIndex:1]; //移除數組的元素,按名稱按序號等 [mutArr removeLastObject]; [mutArr removeObject:@"hell"]; [mutArr removeObjectAtIndex:0]; [mutArr removeAllObjects]; //替換元素 [mutArr replaceObjectAtIndex:1 withObject:@"hello"]; //把一個數組添加到另一個裡 [mutArr addObjectsFromArray:arr1]; //應用:遍曆數組元素方法 NSArray *arr7=[NSArray arrayWithObjects:@"a",@"b",@"c", nil]; int length=[arr7 count]; for (int i=0;i<length;i++) { NSString *element=[arr7 objectAtIndex:i]; NSLog(@"%@",element); } //應用:遍曆數組元素方法 for (NSString *str8 in arr7) { NSLog(@"%@",str8); } //當不確定元素類型時用id,比如除了NSString還有NSNumber for (id str8 in arr7) { NSLog(@"%@",str8); }
【OC學習-18】NSArray的初始化以及常用數組操作方法簡單歸納