zoukankan      html  css  js  c++  java
  • oc74--NSMutableArray

    //
    //  main.m
    //  NSMutableArray ,可变数组
    
    #import <Foundation/Foundation.h>
    
    int main(int argc, const char * argv[]) {
    
        
        // 创建一个空的数组
        NSMutableArray *arrM = [NSMutableArray array];
        NSLog(@"%@", arrM);
        // 如何添加
        [arrM addObject:@"lnj"];
        // 将指定数组中的元素都取出来, 放到arrM中
        // 并不是将整个数组作为一个元素添加到arrM中
        [arrM addObjectsFromArray:@[@"lmj", @"jjj"]];
        // 注意: 以下是将整个数组作为一个元素添加
        [arrM addObject:@[@"lmj1", @"jjj1"]];
        NSLog(@"%@", arrM);//(lnj,lmj,jjj,(lmj1,jjj1))
        // 如何插入
        [arrM insertObject:@"xcq" atIndex:1];
        NSLog(@"%@", arrM);//(lnj,xcq,lmj,jjj,(lmj1,jjj1))
        
        NSRange range = NSMakeRange(2, 2);
        NSIndexSet *set = [NSIndexSet indexSetWithIndexesInRange:range];
        // 插入一组数据, 指定数组需要插入的位置, 和插入多少个
        [arrM insertObjects:@[@"A", @"B"] atIndexes:set];
        NSLog(@"%@", arrM);//(lnj,xcq,A,B,lmj,jjj,(lmj1,jjj1))
        
        // 如何删除
        [arrM removeObjectAtIndex:0];//(xcq,A,B,lmj,jjj,(lmj1,jjj1))
         NSLog(@"%@", arrM);
        
        [arrM removeLastObject];
        NSLog(@"%@", arrM);//(xcq,A,B,lmj,jjj)
        
        [arrM removeObject:@"A"];//(xcq,B,lmj,jjj)
         NSLog(@"%@", arrM);
        
        // 如何替换
        [arrM replaceObjectAtIndex:1 withObject:@"M"];
        NSLog(@"%@", arrM);//(xcq,M,lmj,jjj)
        
        // 如何获取
        NSLog(@"%@", [arrM objectAtIndex:0]);//xcq
        NSLog(@"%@", arrM[0]);//xcq
        
        // 替换
        arrM[0] = @"ZS";
        NSLog(@"%@", arrM);//(ZS,M,lmj,jjj)
        
        
        // 注意: 不能通过@[]来创建一个可变数组, 因为@[]创建出来的是一个不可变的数组
        // 如果把一个不可变数组当做一个可变数组来使用, 会引发一个运行时的错误
        NSMutableArray *arrM1 = @[@"lnj", @"lmj"];//(lnj,lmj)
        [arrM1 addObject:@"JJJ"];//报错
        
        return 0;
    }
  • 相关阅读:
    安装项目管理工具 SVN+Redmine
    jquery validate
    NHibernate集合映射中的set, list, map, bag, array
    NHibernate执行原始SQL代码的方法小结 .
    一个简单的存储过程
    修改Project中的表名及字段名
    用代码修改类名
    实现Pick和Reigister
    转移单的装运和收货
    库存维度检查
  • 原文地址:https://www.cnblogs.com/yaowen/p/7440767.html
Copyright © 2011-2022 走看看