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

来源:互联网 发布:北上广不相信眼泪 知乎 编辑:程序博客网 时间:2024/06/05 19:13
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"];

0 0
原创粉丝点击