Objc-C 知识点回顾 五 NSArray、NSMutableArray

1.NSArray
    //(1)不可变数组
    //(2)一旦创建, 不能更改
    //(3)数组中存放的元素必须是对象类型的
    //(4)数组以nil为结束符号

    //创建数组
    NSArray *array = [[NSArray alloc] initWithObjects:@"abc", @"123", @"ABC", nil];
    NSLog(@"%@", array);
    Person *person1 = [[Person alloc] init];
    person1.name = @"Will";
    person1.age = 18;
    Person *person2 = [[Person alloc] init];
    person2.name = @"小张";
    person2.age = 16;
    NSArray *ar = [[NSArray alloc] initWithObjects:person1, person2, nil];
    NSLog(@"%@", ar);
    //获取数组中的某个元素
    NSLog(@"%@", [ar objectAtIndex:0]);
    Person *person3 = [ar objectAtIndex:1];
    NSLog(@"%@", person3);
   
    //获取数组中的元素个数
    NSLog(@"%lu", [ar count]);
2.NSMutableArray: 可变数组
    NSMutableArray *mAr = [[NSMutableArray alloc] initWithCapacity:0];
    //添加元素
    [mAr addObject:@"aaa"];
    [mAr addObject:@"bbb"];
    [mAr addObject:@"ccc"];
    NSArray *ar1 = [NSArray arrayWithObjects:@"aaa", @"bbb", @"ccc", nil];
    [mAr addObjectsFromArray:ar1];
    NSLog(@"%@", mAr);
    //修改某个元素
    [mAr replaceObjectAtIndex:3 withObject:@"ddd"];
    NSLog(@"%@", mAr);
    //插入一个元素
    [mAr insertObject:@"aaa" atIndex:4];
    NSLog(@"%@", mAr);
    //删除某个元素
    [mAr removeObjectAtIndex:1];
    NSLog(@"%@", mAr);
    //数组排序
    [mAr sortUsingSelector:@selector(compare:)];
    NSLog(@"%@", mAr);
    //交换两个元素
    [mAr exchangeObjectAtIndex:0 withObjectAtIndex:2];
    NSLog(@"%@", mAr);
    //遍历数组
    //1.
    for (int i = 0; i < mAr.count; i++) {
        NSLog(@"%@", [mAr objectAtIndex:i]);
    }
    NSLog(@"\n");
    //当数组中的元素类型一样时,使用forin循环,快速枚举
    for (NSString *string in mAr) {
        NSLog(@"%@", string);
    }
3.NSNumber:数值类型
    //基本数据类型 转 NSNumber
    NSNumber *num = [NSNumber numberWithInt:123];
    NSLog(@"%@", num);
    //NSNumber 转 基本数据类型
    int d = [num integerValue];
    NSLog(@"%d", d);
    float e = [num floatValue];
    NSLog(@"%.2f", e);
1、图书管理
     使用可变数组管理所有书籍(定义
    Book
    类,包含书
    名和价格)。
    2、数组可以添加、删除书籍。
    3、可以从数组根据书名查找书籍,并修改书籍的价格
    4、展示所有书籍清单(书名
    */
    //实例化存放书籍名的数组和存放书籍价格的数组
    NSMutableArray *arr1 = [NSMutableArray arrayWithObjects:@"xiyouji",@"hongloumeng" ,@"helloworld",nil];
    NSMutableArray *priceArr1 = [NSMutableArray arrayWithObjects:@"100k",@"200k",@"1k",nil];
    //添加元素
    [arr1 addObject:@"sanGuo"];
    [priceArr1 addObject:@"0"];
    //删除元素
    [priceArr1 removeObjectAtIndex:[arr1 indexOfObject:@"sanGuo"]];
    [arr1 removeObject:@"sanGuo"];
    //根据书名改价格
    [priceArr1 replaceObjectAtIndex:[arr1 indexOfObject:@"helloworld"] withObject:@"3mao"];
    [arr1 removeObject:@"sanGuo"];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值