iOS- NSArray and NSMutableArray

1.NSArray

//数组的创建和初始化
//nil:数组结束标志
//id:保存任意oc对象(数组中元素的类型可以各不相同)
NSArray *array = @[@"bei", @"jing", @"huan", @"ying", @"nin"];
//初始化时数组中的元素放到中括号中[], 输出的时候数组元素放在()
//一般初始化不可变数组(不需要写nil)

pragma mark 对象方法创建数组

NSArray *array1 = [[NSArray alloc] initWithArray:array];//用另一个数组初始化当前数组
NSArray *array2 = [[NSArray alloc] initWithObjects:@"bei", @"jing", @"huan", @"ying", @"nin", nil];
//nil方法中自动存在

pragma mark 类方法创建数组

NSArray *array3 = [NSArray arrayWithArray:array];
NSArray *array4 = [NSArray arrayWithObjects:@"bei", @"jing", @"huan", @"ying", @"nin", nil];

2.NSArray 操作

//返回数组个数
    //- (NSUInteger)count;
    //作用:返回数组中元素的个数//不包括nil
    NSLog(@"%lu", [array count]);


//数组中元素
    NSArray *array = [NSArray arrayWithObjects:@"bei", @"jing", @"huan", @"ying", @"nin", nil];
    //- (id)objectAtIndex:(NSUInteger)index;
    //作用:取出数组中的元素
    NSLog(@"%@", [array objectAtIndex:0]);


//判断数组里是否包含相同的元素

    //- (BOOL)containsObject:(id)anObject;
    if ([array containsObject:@"hua"]) {
        NSLog(@"包含该元素");
    } else {
        NSLog(@"不包含该元素");
    }


//获得数组最后一个元素
    [array lastObject]

//字符串切割,将切割的字符串,存到数组中

    NSString *string = @"chen$chao$ni$hao$ma";
    //- (NSArray *)componentsSeparatedByString:(NSString *)separator;
    //作用:字符串的切割,将切割后的内容保存到数组中
    NSArray *arrayFromString = [string componentsSeparatedByString:@"$"];
    //作用:字符串集切割,遇到' '或'3'都切割
    [arrayFromString componentsSepatatedByCharactersInSet:[NSCharacterSet          characterSetWithCharactersInString:@" 3"]];
    NSLog(@"arrayFromString = %@", arrayFromString);
    //- (NSString *)componentsJoinedByString:(NSString *)separator;
    //作用:将数组中的元素进行拼接
    NSString *stringFromArray = [arrayFromString componentsJoinedByString:@" "];

3.NSMutableArray :可变数组

//NSMutableArray创建 
   NSMutableArray *mutableArray = [[NSMutableArray alloc] init];
   //创建空数组
   NSMutableArray *mutableArray1 = [[NSMutableArray alloc] initWithCapacity:0];
   NSMutableArray *mutableArray2 = [NSMutableArray arrayWithCapacity:0];

//数组(增)追加元素和数组

    //- (void)addObject:(id)anObject;
    //作用:数组末尾增加一个元素
    [array addObject:@"bei"];//最常用
    
    //- (void)addObjectsFromArray:(NSArray *)otherArray;
    //作用:数组末尾追加一个数组
    [array addObjectsFromArray:array1];
      
    //- (void)insertObject:(id)anObject atIndex:(NSUInteger)index;
    //作用:在数组中的指定位置处插入一个元素
    [array insertObject:@"bian" atIndex:1];

//数组的删除操作

        //- (void)removeObject:(id)anObject;

    //作用:删除数组中指定的元素(有几个删几个)
    [array removeObject:@"bei"];//最常用


    //- (void)removeObjectAtIndex:(NSUInteger)index;
    //作用:删除指定下表处的元素
    [array removeObjectAtIndex:2];


    //- (void)removeObjectsInRange:(NSRange)range;
    //作用:删除指定范围内的元素
    NSRange range = {0, 3};
    [array removeObjectsInRange:range];


    [array removeLastObject];//删除最后一个元素
    [array removeAllObjects];//删除所有元素

//数组替换操作(修改)

    //- (void)replaceObjectAtIndex:(NSUInteger)index withObject:(id)anObject;
    //作用:替换数组中的指定元素
    //index:下标
    //anObject:替换的内容
    [array replaceObjectAtIndex:0 withObject:@"dong"]



    //- (void)exchangeObjectAtIndex:(NSUInteger)idx1 withObjectAtIndex:(NSUInteger)idx2;
    //作用:交换数组中的两个元素
    [array exchangeObjectAtIndex:0 withObjectAtIndex:3];

//数组修改元素(整个修改替换)

    - (void)setArray:(NSArray *)otherArray;

你可能感兴趣的:(iOS- NSArray and NSMutableArray)