OC語言-----NSArray , NSMutableArray, NSNumber 基本用法

<span style="font-size:18px;">(1)存儲多個元素(2)存數元素只能是對象,對象可以使不同類型的(3)數組是一個有序的集合.
(4)數組中的元素可以重複 而且重複的對象會成爲數組元素

今天我們學瞭如下NSArray類中常用的幾個方法.

1,創建對象 

(1)使用便利構造器  arraywithobject  創建對象可以指定多個對象元素元素間用逗號間隔
  nil作爲數組元素存放的結束標誌,遇到 nil 之後的元素都不會放進數組
NSArray *array = [NSArray arrayWithObjects:@"aa",@"bb",@"cc",@"dd", nil];
(2)使用初始化方法 減號方法
NSArray *array1 = [[NSArraalloc]initWithObjects:@"aa",@"bb",@"cc",@"dd",@"aa",@"bb",@"cc",@"dd", nil];
2 獲取數組中的元素個數
NSUInteger count = [array count];
3. 根據索引值獲取對象
(1)根據指定下標獲取對應元素
NSString *str = [array objectAtIndex:1];
NSLog(@"str = %@",str);
(2)獲取數組第一個元素
NSString *str1 = [array firstObject];若數組爲空 則返回 nil
而objectAtIndex:0 則會造成'NSRangeException  [__NSArrayI objectAtIndex:]: index 0 beyond bounds for empty array'' 崩潰 下標越界
NSLog(@"str1 = %@",str1);//若數組爲空 則返回 nil
(3)獲取數組最後元素
NSString *str2 = [array lastObject];
NSLog(@"str2 = %@",str2);
4,獲取對象在數組中的索引值
NSUInteger count1 = [array indexOfObject:@"dd"];  
5.判斷是否包含某些對象
BOOL isExist = [array containsObject:@"dd"];
NSLog(@"isExist = %d",isExist);
6.排序(升序)
NSArray *sortArr = [array1 sortedArrayUsingSelector:@selector(compare:)];
NSLog(@"sortarr = %@",sortArr);
7.快速遍歷(快速枚舉)
 for (NSString *str2 in array1) {
            NSLog(@"%@",str2);
        }

普通的for循環方法
for (int i = 0; i < [array count]; i++) {
NSString *str2 = [array objectAtIndex:i];
NSLog(@"str2 = %@",str2);
}
可變數組類 NSMutableArray
和可變字符串類 一樣 在原數組操作 不需要返回值
1創建數組對象
        NSMutableArray *arr1 = [[NSMutableArray alloc]initWithObjects:@"aa",@"bb",@"cc",@"dd", nil];
        
2 添加元素
        [arr1 addObject:@"ff"];
        NSLog(@"arr1 = %@",arr1);
3 插入元素
        [arr1 insertObject:@"gg" atIndex:1];
        NSLog(@"arr1 = %@",arr1);
4 刪除元素
        [arr1 removeObject:@"bb"];
        NSLog(@"arr1 = %@",arr1);
5 替換元素
        [arr1 replaceObjectAtIndex:3 withObject:@"ee"];
        NSLog(@"arr1 = %@",arr1);
6交換指定位置的元素
        [arr1 exchangeObjectAtIndex:2 withObjectAtIndex:3];
        NSLog(@"arr1 = %@",arr1);
//7 對原數組進行排序
        [arr1 sortUsingSelector:@selector(compare:)];
        NSLog(@"arr1 = %@",arr1);
8 遍歷
        for (NSString *a in arr1) {//如果數組中的對象類型不同,我們就是用對象的泛型 id 類型 可以代表所有對象類型
            NSLog(@"a = %@",a);
        }


    (移除所有元素)
        [arr1 removeAllObjects];
        NSLog(@"arr1 = %@",arr1);

基本數據型 和數值對象 轉換
NSNumber *a1 = [NSNumber numberWithChar:a];將字符類型的 變量a 轉換爲數值對a1
char  b1 =  [a1 charValue ];將數值對象轉換爲字符類型</span>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章