iOS-OC-基础-NSArray常用方法

NSArray常用方法和属性

//    ——————————————————————数组常用方法——————————————————————
    
    // 1、计算数组元素的个数: count
    NSArray *arr1 = @[@"11",@"22",@"33"];
    NSUInteger cout = [arr1 count];
    NSLog(@"cout = %ld",cout);
    
    // 2、objectAtIndex:取得对应下标的元素
    // 方式一:
    id obj = [arr1 objectAtIndex:0];
    NSLog(@"obj:%@",obj);
    
    // 方式二:
    id obj1 = arr1[1];
    NSLog(@"obj1:%@",obj1);
    
    // 3、containsObject 判断数组是否存在某个对象
    BOOL result = [arr1 containsObject:@"11"];
    if (result) {
        NSLog(@"数组存在这个对象");
    }
    
    // 4、indexOfObject :取得对象所在数组的下标位置
    NSUInteger index = [arr1 indexOfObject:@"ww"];
    NSLog(@"index = %ld",index);
    
    // 5、取得数组的最后一个元素
    id obj2 = [arr1 lastObject]; //取得数组的最后一个元素
    NSLog(@"obj2:%@",obj2);
    
    id obj3 = [arr1 firstObject];// 取得数组的第一个元素
    NSLog(@"obj3:%@",obj3);
    
    // 6、以某个字符串的截取原来字符串,实质就是删掉这“某个”字符串:componentsSeparatedByString,返回一个数组
    NSString *s1 = @"44*55*66";
    NSArray *arr2 = [s1 componentsSeparatedByString:@"*"];
    NSLog(@"arr6:%@",arr2);
    
    // 7、将数组中元素用某个字符串拼接起来:componentsJoinedByString,返回一个字符串类型
    NSString *newString = [arr2 componentsJoinedByString:@","];
    NSLog(@"newString :%@",newString);
    
    
    /*===============NSMutableArray(可改变数组)===================*/
    
    //——————————————————————可变数组的常用方法———————————————————————————
    NSMutableArray *mArr = [[NSMutableArray alloc] initWithObjects:@"77",@"88",@"99",@"00" ,nil];
    // 1、数组添加元素
    // 给数组添加元素:addObject
    [mArr addObject:@"aa"];
    NSLog(@"mArr :%@",mArr);
    
    // 添加某个数组里的元素:addObjectsFromArray
    [mArr addObjectsFromArray:mArr];
    NSLog(@"mArr:%@",mArr);
    
    // 2、数组插入元素 :
    // insertObject 数组插入某个元素到指定位置
    [mArr insertObject:@"bb" atIndex:1];
    NSLog(@"mArr:%@",mArr);
    
    // 3、replaceObjectAtIndex 用新元素替换某个位置的元素
    [mArr replaceObjectAtIndex:3 withObject:@"xx"];
    NSLog(@"mArr:%@",mArr);
    
    // 4、exchangeObjectAtIndex 交换两个元素的位置
    [mArr exchangeObjectAtIndex:1 withObjectAtIndex:2];
    NSLog(@"mArr:%@",mArr);
    
    // 5、数组元素删除
    
    // 删除指定范围的元素:removeObjectsInRange
    NSRange rang = {1,2};
    [mArr removeObjectsInRange:rang];
    NSLog(@"mArr:%@",mArr);
    
    // 删掉指定的所有元素:removeObject
    [mArr removeObject:@"99"];
    NSLog(@"mArr:%@",mArr);
    
    // 删除指定位置的元素:removeObjectAtIndex
    [mArr removeObjectAtIndex:1];
    NSLog(@"mArr:%@",mArr);
    
    // 删除最后一个元素:removeLastObject
    [mArr removeLastObject];
    NSLog(@"mArr:%@",mArr);
    
    // 删除数组的所有元素,数组没有删除:removeAllObjects
    [mArr removeAllObjects];
    NSLog(@"mArr:%@",mArr);
    
    
    /*====================================数组的遍历==================================*/
    
    // 1、普通遍历
    
    NSArray *array = @[@"1",@"2",@"3",@"4"];
    for (int i = 0; i < array.count; i++) {
        
        NSString *string = [array objectAtIndex:i];
        //            NSString *str = array[i];
        NSLog(@"第%d个:%@",i,string);
    }
    
    // 2、快速遍历
    for (id string in array) {  // for int
        
        NSLog(@" %@",string);
    }
    
    // 3、block 遍历
    [array enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
        
        NSLog(@"第%ld个:%@",idx,obj);
        
    }];
    

本文GitHub地址:https://github.com/zhangkiwi/iOS_SN_NSArray

原文地址:https://www.cnblogs.com/zhang-kiwi/p/5009017.html