前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Objective-C 学习记录6--dictionary

Objective-C 学习记录6--dictionary

作者头像
叉叉敌
发布2019-06-26 11:41:30
4660
发布2019-06-26 11:41:30
举报
文章被收录于专栏:ChasaysChasays

Objective-C 学习记录6--dictionary

1.NSDictionary 和NSMutableDictionary

NSDictionary dictionaryWithObjectsAndKeys:~,nil

使用键值对创建字典,用nil标志结束

NSDictionary initWithObjectsAndKeys:

使用键值对初始化字典,也用nil来表示结束.

dictionary count 计算其字典的长度.

dictionary keyEunmerator 将key全部存在NSEunmerator中,可以快速枚举其中的key的值.

dictionary objectForKey: key 通过key来查询值.

demo:

代码语言:javascript
复制
#import <UIKit/UIKit.h> 
    #import "MyClass.h" 
    int main(int argc, char *argv[]) 
    { 
        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 
       
        //添加我们的测试代码 
         
        NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"我是值",@"我是key1",@"我是值2",@"我是key2", nil]; 
         
        //得到词典的数量 
        int count = [dictionary count]; 
        NSLog(@"词典的数量为: %d",count); 
         
        //得到词典中所有KEY值 
        NSEnumerator * enumeratorKey = [dictionary keyEnumerator]; 
         
        //快速枚举遍历所有KEY的值 
        for (NSObject *object in enumeratorKey) { 
            NSLog(@"遍历KEY的值: %@",object); 
        } 
         
        //得到词典中所有Value值 
         NSEnumerator * enumeratorValue = [dictionary objectEnumerator]; 
         
        //快速枚举遍历所有Value的值 
        for (NSObject *object in enumeratorValue) { 
            NSLog(@"遍历Value的值: %@",object); 
        } 
         
        //通过KEY找到value 
        NSObject *object = [dictionary objectForKey:@"我是key2"]; 
         
        if (object != nil) { 
            NSLog(@"通过KEY找到的value是: %@",object); 
        } 
         
         
         
        int retVal = UIApplicationMain(argc, argv, nil, nil); 
        [pool release]; 
        return retVal; 
    }

2.NSMutableDictionary是NSDictionary的子类,因此也继承其有的方法.

代码语言:javascript
复制
[NSMutableDictionary dictionaryWithCapacity:10];
//创建一个长度为10的字典,不过字典的内容超过了10会自动增加.
代码语言:javascript
复制
[NSMutableDictionary initWithCapacity: 10];
//初始化长度为10;

[dictionary setObject:~ forKey;~];
//x向可变的字典中添加数据;
[dictionary removeAllobjects];//删除所有的数据;
removeObjectForKey: //删除key的对应值;
代码语言:javascript
复制
#import <UIKit/UIKit.h> 
    #import "MyClass.h" 
    int main(int argc, char *argv[]) 
    { 
        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 
       
        //添加我们的测试代码 
         
        //创建词典对象,初始化长度为10 
        NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithCapacity:10]; 
        
        //向词典中动态添加数据 
        [dictionary setObject:@"被添加的value1" forKey:@"key1"]; 
         
        [dictionary setObject:@"被添加的value2" forKey:@"key2"]; 
         
         
        //通过KEY找到value 
        NSObject *object = [dictionary objectForKey:@"key2"]; 
         
        if (object != nil) { 
            NSLog(@"通过KEY找到的value是: %@",object); 
        } 
         
         
         
        int retVal = UIApplicationMain(argc, argv, nil, nil); 
        [pool release]; 
        return retVal; 
    }
代码语言:javascript
复制
[NSMutableDictionary dictionaryWithCapacity:10];
//创建一个长度为10的字典,不过字典的内容超过了10会自动增加.
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2014年08月13日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Objective-C 学习记录6--dictionary
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档