NSArray,NSMutableArray的一些經常使用方法

不可變數組 ——NSArray 數組

經常使用的初始化一個數組: xcode

        NSArray *array1 = [[NSArray alloc] init]; app

              NSArray *array2 = [NSArray array]; spa

 //對於上述兩個方法,在NSArray中用的不多,由於這是一個空數組,它的值是不可改變的,意味着一旦建立,就永遠爲空 code

              NSArray *array3 = [NSArray arrayWithObjects:[NSNumber                                                                                numberWithInt:123],@"char",[NSNumber numberWithFloat:1.0f],nil]; component

              NSArray *array4 = [NSArray arrayWithArray:array3]; 對象

              NSArray *array5 = [NSArray arrayWithObject:@123];//NSNumber新方法 繼承

               NSString *path = @"string8.text"; //@裏出現的是想要訪問的文件的路徑 內存

              NSArray *array6 = [NSArray arrayWithContentsOfFile:path]; ci

新方法:    NSArray *array = @[@123,@"123",@{@"key": @"value"}];

      新方法的出現,減輕了很多代碼的負擔,對於新方法不用去刻意記,在xcode中輸入@後,系統會自動出現一幅圖,    選擇想用的方法,去建立就好。

     對於alloc 方法和不用alloc 建立的區別,在這裏就不敘述了,xcode中使用ARC後,開發者能夠不用手動管理內存,用alloc時也沒有太多須要注意的問題了


經常使用的方法:

獲取數組長度:      NSInteger count = [array count];

根據下標訪問數組NSString * string = [array3 objectAtIndex:1];

在原來的數組上追加對象或數組,返回一個新的數組(原來的數組不變)

        NSArray *addArray1 = [array1 arrayByAddingObject:@"char"];

        NSArray *addArray2 = [array1 arrayByAddingObjectsFromArray:array4];

用指定的字符串將數組中的元素鏈接起來:

        NSString *appstring = [array4 componentsJoinedByString:@","];

用指定的字符串將字符串中的元素分開並保存到數組中:

        NSArray *appArray = [appstring componentsSeparatedByString:@","];


數組中是否包含了某個對象:

        BOOL isContain = [appArray containsObject:@"abc"];

查找某對象在數組中的位置,若找不到,將返回NSNotFound:

        NSInteger index = [appArray indexOfObject:@"char"];

返回數組中最後一個元素:

        NSString *lastString = [appArray lastObject];


可變數組 ——NSMutableArray(繼承自NSArray)

經常使用方法:

初始化,設置元素的個數爲6,可是能夠修改:

        NSMutableArray *muArray1 = [NSMutableArray arrayWithCapacity:6];

向數組中指定下標插入一個元素:

        [muArray1 insertObject:@"abc" atIndex:0];

向數組中加入一個元素

        [muArray1 addObject:@"123"];

移除數組中最後一個元素:

        [muArray1 removeLastObject];

移除數組中指定元素:

        [muArray1 removeObject:@"123"];

移除數組中指定下標元素:

        [muArray1 removeObjectAtIndex:0];

加入數組做爲其元素:

        [muArray1 addObjectsFromArray:array];


遍歷數組的兩種方法:

常規方法:

        NSArray *array = @[@"a",@"b",@"c",@"d",@"e"];

        NSInteger length = [array count];

        for (int i = 0; i < length; i++) {

            NSString * element = [array objectAtIndex:i];

            NSLog(@"element = %@\n",element);

        }

快速遍歷:

        NSArray *array = @[@"a",@"b",@"c",@"d",@"e"];

        NSInteger length = [array count];

        for (NSString *element in array) {

            NSLog(@"element = %@",element);

        }

 
相關文章
相關標籤/搜索