美文网首页
枚举器遍历

枚举器遍历

作者: 崔盛希 | 来源:发表于2018-12-06 11:12 被阅读16次

    句子枚举(字符串):

    首先介绍下,我是大伟。我是一个篮球热爱者。你了解我吗?我们也许并不认识!我想说:“我绝对是你最值得拥有的伙伴!”。 那你还在等什么呢,come on!

    上看一段话把每一个句子输出出来:

    
     NSString *text = @"首先介绍下,我是大伟。我是一个篮球热爱者。你了解我吗?我们也许并不认识!我想说:“我绝对是你最值得拥有的伙伴!”。 那你还在等什么呢,come on!";
            // NSStringEnumerationBySentences  以句子进行的分割。
            [text enumerateSubstringsInRange:NSMakeRange(0, [text length]) options:NSStringEnumerationBySentences usingBlock:^(NSString * _Nullable substring, NSRange substringRange, NSRange enclosingRange, BOOL * _Nonnull stop) {
                
                if (substring) {
                    i++;
                }
                NSLog(@"%u: %@ range: %@",i,substring, NSStringFromRange(substringRange));
            }];
    

    输出结果如下:

    2018-12-06 10:58:42.662180+0800 studyDemo[1184:139666] 1: 首先介绍下,我是大伟。 range: {0, 11}
    2018-12-06 10:58:42.662461+0800 studyDemo[1184:139666] 2: 我是一个篮球热爱者。 range: {11, 10}
    2018-12-06 10:58:42.662509+0800 studyDemo[1184:139666] 3: 你了解我吗? range: {21, 6}
    2018-12-06 10:58:42.662539+0800 studyDemo[1184:139666] 4: 我们也许并不认识! range: {27, 9}
    2018-12-06 10:58:42.662578+0800 studyDemo[1184:139666] 5: 我想说:“我绝对是你最值得拥有的伙伴!”。  range: {36, 22}
    2018-12-06 10:58:42.662600+0800 studyDemo[1184:139666] 6: 那你还在等什么呢,come on! range: {58, 17}
    

    倒序枚举

    NSArray *tmpAry = @[@"江泽民",@"胡锦涛",@"习近平"];
            /**
             NSEnumerationConcurrent 当前的排序状态
             NSEnumerationReverse    倒序排列
             */
            [tmpAry enumerateObjectsWithOptions:NSEnumerationReverse usingBlock:^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
                
                NSLog(@"国家主席===%@\n",obj);
                
            }];
            
    

    输出结果:

    2018-12-06 11:06:46.824150+0800 studyDemo[1216:151502] 国家主席===习近平
    
    2018-12-06 11:06:46.824178+0800 studyDemo[1216:151502] 国家主席===胡锦涛
    
    2018-12-06 11:06:46.824192+0800 studyDemo[1216:151502] 国家主席===江泽民
    

    字典枚举

    NSDictionary *tmpdic = @{@"徐峥":@"我不是药神",@"沈腾":@"西红柿首富"};
          
            /**
             NSEnumerationConcurrent 当前的排序状态
             NSEnumerationReverse    倒序排列
             */
            [tmpdic enumerateKeysAndObjectsWithOptions:NSEnumerationReverse usingBlock:^(id  _Nonnull key, id  _Nonnull obj, BOOL * _Nonnull stop) {
                NSLog(@"我不想说,我很亲切,我不想说,我很纯洁:key=%@ value=%@\n",key,obj);
            }];
    

    输出结果:

    2018-12-06 11:10:22.412999+0800 studyDemo[1235:157396] 我不想说,我很亲切,我不想说,我很纯洁:key=徐峥 value=我不是药神
    
    2018-12-06 11:10:22.413019+0800 studyDemo[1235:157396] 我不想说,我很亲切,我不想说,我很纯洁:key=沈腾 value=西红柿首富
    
    

    相关文章

      网友评论

          本文标题:枚举器遍历

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