美文网首页
iOS开发 升序数组123578转换成1~3,5,7~8

iOS开发 升序数组123578转换成1~3,5,7~8

作者: 薄凉_简书 | 来源:发表于2019-05-29 10:20 被阅读0次
NSArray *arr = @[@"1",@"2",@"3",@"4",@"6",@"7",@"8",@"9",@"12",@"15",@"17",@"19",@"20"];
NSMutableArray *lastArray = [NSMutableArray array];
for (NSInteger i = 0; i < arr.count; i++) {
    NSInteger number = [arr[i] integerValue];
    NSInteger j = 1;
    while (((i + j) < arr.count) && ((number + j) == [arr[i + j] integerValue])) {
        j++;
    }
    
    if (j > 1) {
        [lastArray addObject:[NSString stringWithFormat:@"%@~%@",arr[i],arr[i + j - 1]]];
        i = i + j - 1;
    } else {
        [lastArray addObject:[NSString stringWithFormat:@"%@",arr[i]]];
    }
}
NSLog(@"%@",lastArray);

相关文章

网友评论

      本文标题:iOS开发 升序数组123578转换成1~3,5,7~8

      本文链接:https://www.haomeiwen.com/subject/cvretctx.html