美文网首页IOS相关
iOS- NSArray and NSMutableArray

iOS- NSArray and NSMutableArray

作者: 亦晴工作室 | 来源:发表于2016-08-24 14:54 被阅读159次

    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

        本文链接:https://www.haomeiwen.com/subject/recosttx.html