我是靠谱客的博主 清脆保温杯,最近开发中收集的这篇文章主要介绍iOS NSEnumerator的用法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、字典中的(有两个方法):

- (NSEnumerator<KeyType> *)keyEnumerator;//获取所有key值

- (NSEnumerator<ObjectType> *)objectEnumerator;//获取所有value值


示例:

        NSDictionary *myDic=[[NSDictionary alloc]initWithObjectsAndKeys:@"张三",@"name",@"李四",@"name", nil];
        
        NSUInteger count = [myDic count];  
        NSLog(@"词典的数量为:  %lu",count); 
      
        NSEnumerator * myEnumerator = [myDic keyEnumerator];  
        
         
        for (NSObject *object in myEnumerator) {  
            NSLog(@"遍历KEY的值: %@",object);  
        }
        
        NSEnumerator * myEnumerator  = [[myDic allValues] objectEnumerator];
        NSString *value;
        while((value = [myEnumerator nextObject]))
        {
            NSLog(@"遍历的值: %@",value);
        }
        


二、数组中的(有两个方法)

- (NSEnumerator<ObjectType> *)objectEnumerator;//正向遍历数组    ——>完全可用 for in 语法代替

- (NSEnumerator<ObjectType> *)reverseObjectEnumerator;//反向遍历数组

通过objectEnumerator向数组请求枚举器,如果想从后向前浏览集合,可使用reverseObjectEnumerator方法。在获得枚举器后,可以开始一个while循环,每次循环都向这个枚举器请求它的下一个对象:nextObject。nextObject返回nil值时,循环结束。示例如下:

    // NSEnumerator示例
    NSArray *array= [NSArray arrayWithObjects:@"112",@"234",@"3434",@"3455" ,nil];
    NSEnumerator *enumerator = [array reverseObjectEnumerator];
    
    id thing;
    while (thing = [enumerator nextObject]) {
        NSLog(@"Ifound %@",thing);
    }


//也可以这样

    NSArray *array= [NSArray arrayWithObjects:@"112",@"234",@"3434",@"3455" ,nil];
    NSEnumerator *enumerator = [array reverseObjectEnumerator];
    
    NSArray *arr = [enumerator allObjects];
    
    for (NSString *res in arr) {
        NSLog(@"%@",res);
    }






最后

以上就是清脆保温杯为你收集整理的iOS NSEnumerator的用法的全部内容,希望文章能够帮你解决iOS NSEnumerator的用法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(41)

评论列表共有 0 条评论

立即
投稿
返回
顶部