首页 > 代码库 > Objective-C 学习记录6--dictionary
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:
#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 =http://www.mamicode.com/ [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的子类,因此也继承其有的方法.
[NSMutableDictionary dictionaryWithCapacity:10];
//创建一个长度为10的字典,不过字典的内容超过了10会自动增加.
[NSMutableDictionary initWithCapacity: 10];//初始化长度为10;[dictionary setObject:~ forKey;~];//x向可变的字典中添加数据;[dictionary removeAllobjects];//删除所有的数据;removeObjectForKey: //删除key的对应值;
#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; }
[NSMutableDictionary dictionaryWithCapacity:10];
//创建一个长度为10的字典,不过字典的内容超过了10会自动增加.
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。