OC语言学习05-数组的操作

本文介绍如何在Objective-C中使用NSArray进行数组的添加、提取及遍历操作,并展示了不同遍历方法的具体实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#import <Foundation/Foundation.h>


int main(int argc, const char * argv[]) {

    @autoreleasepool {

        //数组的添加

        

        NSArray *array1 = [NSArray arrayWithObjects:@"one",@"two", nil];

        NSLog(@"array1 = %@", array1);

        //给数组添加一个元素  需要接收该方法返回值

        //不是直接添加  而是临时创建一个新的数组

        array1 = [array1 arrayByAddingObject:@"three"];

        NSLog(@"array = %@", array1);

        //给数组添加多个元素

        array1 = [array1 arrayByAddingObjectsFromArray:@[@"four", @"five", @"six"]];

        NSLog(@"array1 = %@", array1);

        

        //数组的提取

        //提取数组中指定范围的元素

        NSArray *subArray1 = [array1 subarrayWithRange:NSMakeRange(2, 3)];

        NSLog(@"subArray1 = %@",subArray1);

        

        //创建一个可变的下标集合对象

        NSMutableIndexSet *indexSet = [NSMutableIndexSet indexSetWithIndex:1];

        //给一个可变集合对象添加元素

        [indexSet addIndex:3];

        [indexSet addIndex:4];

        NSArray *subArray2 = [array1 objectsAtIndexes:indexSet];

        NSLog(@"subArray2 = %@", subArray2);

        

        //以字符串整体进行分割

        NSString *str = @"get out the way";

        NSArray *array2 = [str componentsSeparatedByString:@" "];

        NSLog(@"array2 = %@", array2);

        

        //自定义分割符进行分割

 //       NSString *str1 = @"get :out :the :way";

//        NSString *array3 = [str1 componentsSeparatedByString:@" :"];

//        NSLog(@"array3 = %@", array3);

        

        //数组的遍历

        NSArray *sortArray = @[@"hello", @"how", @"are", @"you", @"today"];

        //方法一 通过数组元素的下标进行遍历数组

        NSInteger cnt = [sortArray count];

        for (NSInteger i = 0; i < cnt; i++) {

            NSLog(@"%@", [sortArray objectAtIndex:i]);

        }

        

        //方法二: 枚举器法

        //创建一个倒序的枚举器

        NSEnumerator *reverseEnum = [sortArray reverseObjectEnumerator];

        id obj = nil;

        while(obj = [reverseEnum nextObject]) {

            NSLog(@"obj = %@", obj);

        }

        //创建一个正序的枚举器

        

        NSEnumerator *enumerator = [sortArray objectEnumerator];

        id obj2 = nil;

        while (obj2 = [enumerator nextObject]) {

            NSLog(@"obj2 = %@", obj2);

        }

        

        //方法三 快速枚举法

        //判断 

        for (id obj3 in sortArray) {

            NSLog(@"快速枚举法 obj3 = %@", obj3);

        }

        

    }

    return 0;

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值