Foundation框架中的 数组

 Person *p1 = [[Person alloc]init];

    Person *p2 = [[Person alloc]init];

    Person *p3 = [[Person alloc]init];

    


    [p1 setName:@"zhangsan"];

    [p1 setAge:20];

    [p2 setName:@"lisi"];

    [p2 setAge:21];

    [p3 setName:@"wangwu"];

    [p3 setAge:22];

    NSArray *array =[NSArray arrayWithObjects:p1,p2,p3,nil ];
    NSArray *quick = @[p1,p2,p3,];//快速创建数组

    NSUInteger count = [array count];//获取数组的元素的个数

    NSLog(@"%ld",count);

    

    

    

    Person *contain = [[Person alloc]init];

    [contain setName:@"zhangsan"];

    [contain setAge:20];

    BOOL isCotain = [array containsObject:contain];//判断数组是否包含相同的元素

    if(isCotain){

        NSLog(@"包含");

    

    }else{

        NSLog(@"不包含");

    }

    

    

    Person *p = [array objectAtIndex:2];//根据数组索引值找到相应元素

    NSInteger i = [array indexOfObject:p];//通过对象查找索引值

    

    

    

    NSArray *str =[NSArray arrayWithObjects:@"123",@"456",@"789" ,nil];

    NSString *string = [str componentsJoinedByString:@"--"];//将数组元素以“--”形式拼接字符串

    NSLog(@"%@",string);

    

    

    NSInteger index = 0;

    for (Person *p5 in array) {   //数组的遍历

        index ++;

        NSLog(@"元素是:%@",p5);

枚举器遍历数组的效率最高

NSEnumerator *en = [array objectEnumerator];

    Person *personEnmerator = nil;

    while ((personEnmerator = [en nextObject])!= nil) {

        NSLog(@"%@",personEnmerator);

    }


 //——————————————————————可变数组——————————————

    NSMutableArray *mut = [NSMutableArray arrayWithObjects:p1,p2,p3, nil];

    [mut addObject:p1];//追加元素

    [mut insertObject:p4 atIndex:0];//在固定的索引值添加元素

    [mut removeObject:p2];//删除指定元素

    [mut removeObjectAtIndex:2];//删除指定索引值的元素

    [mut removeLastObject];//删除最后一个元素

    [mut exchangeObjectAtIndex:0 withObjectAtIndex:1];//交换索引值所对应的元素

    

    

    for (int a = mut.count -1;a>=0;a--)//删除某一个特定元素要倒序删除

    {

        Person *deletePerson = [mut objectAtIndex:a];

        if (deletePerson.age == 20) {

            [mut removeObject:deletePerson];

        }

    }

    

    

    

   





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值