一.NSIndexSet创建

        NSIndexSet *indexSet1 = [[NSIndexSet alloc]initWithIndex:1];
        NSIndexSet *indexSet2 = [[NSIndexSet alloc]initWithIndexSet:indexSet1];
        NSIndexSet *indexSet3 = [[NSIndexSet alloc]initWithIndexesInRange:NSMakeRange(2, 3)];

二.NSIndexSet操作

1.根据一个范围的索引获取元素

        NSArray *arr = @[@"one",@"two",@"three",@"four",@"five",@"six"];
        NSIndexSet *indexSet3 = [[NSIndexSet alloc]initWithIndexesInRange:NSMakeRange(2, 3)];
        NSLog(@"得到的元素为%@",[arr objectsAtIndexes:indexSet3]);

    输出结果:

2016-06-27 23:19:36.351 OcTest[586:111416] 得到的元素为(
    three,
    four,
    five
)
Program ended with exit code: 0

2.索引不是连续的时候,用可变索引来操作

        NSArray *arr = @[@"one",@"two",@"three",@"four",@"five",@"six"];

        NSMutableIndexSet *mIndexSet = [[NSMutableIndexSet alloc]init];
        [mIndexSet addIndex:1];
        [mIndexSet addIndex:3];
        [mIndexSet addIndex:5];
        NSArray *arr2 = [arr objectsAtIndexes:mIndexSet];
        NSLog(@"arr is %@",arr2);

  输出结果:

2016-06-27 23:18:21.739 OcTest[576:103075] arr is (
    two,
    four,
    six
)
Program ended with exit code: 0

  

 

posted on 2016-06-25 17:56  chengkaihua  阅读(179)  评论(0编辑  收藏  举报