iOS开发中NSDictionary操作大全

来源:互联网 发布:怎么注册野火软件 编辑:程序博客网 时间:2024/05/22 07:57

OC中字典的操作大全,赶紧收藏吧

#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {    @autoreleasepool {        /**         *  字典的创建         */        //alloc创建字典        NSArray *array = [NSArray arrayWithObjects:@"welcome",@"to",@"beijing",nil];        NSNumber *number = [NSNumber numberWithFloat:200];        NSDictionary *dic1 = [[NSDictionary alloc]initWithObjectsAndKeys:array,@"name1",numb<span style="white-space:pre"></span>er,@"score",@"vlalue",@"key", nil];        //类方法创建字典        NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys: array,@"name2",numb<span style="white-space:pre"></span>er,@"score2",@"vlaue2",@"key2",nil];        //打印的调用方法,可省略直接打印        NSLog(@"%@",[dic1 description]);        NSLog(@"%@",dic2);        /**         *  字典的常用方法         */        //1.字典中的元素个数        NSUInteger count = [dic1 count];        NSLog(@"%lu",count);        //2.访问字典中的元素        NSArray *arr = [dic1 objectForKeyedSubscript:@"name1"];        //NSLog(@"%@",arr);        //3.获取到所有的key        NSArray *keys = [dic2 allKeys];        //NSLog(@"%@",keys);        //4.获取到所有的value        NSArray *value = [dic1 allValues];        //NSLog(@"%@",value);        [dic1 objectForKey:@"key"];                /**         *  xcode4.4以后对字典创建和访问的优化         */        //1.创建字典        NSDictionary *dic = @{@"names":array,@"scores":number,@"xcode4.4":@"创建字典"};        //2.通过key可以获取value        NSNumber *num = dic[@"scores"];         NSLog(@"%@",num);        /**         *  可变字符串         */        //1.创建可变字符串        NSArray *marray = [NSArray arrayWithObjects:@"this",@"is",@"book",nil];        NSMutableDictionary *mdic = [[NSMutableDictionary alloc]initWithObjectsAndKeys:marra<span style="white-space:pre"></span>y,@"this",@"hello",@"world", nil];                 NSLog(@"%@",mdic);        //2.向字典中添加元素,保持key不变,只改变value则可以替换原有的值        NSNumber *mnumber = [NSNumber numberWithFloat:100];        NSString *user = @"785304434@qq.com";        [mdic setObject:mnumber forKey:@"key"];        [mdic setObject:user forKey:@"email"];        //3.删除元素        //根据key,移除元素        [mdic removeObjectForKey:@"name"];        //移除所有的元素        [mdic removeAllObjects];        NSLog(@"%@",mdic);        /**         *  遍历字典         */        //1.快速遍历        for (id keys in dic2) {            id value = [dic2 objectForKeyedSubscript:keys];            NSLog(@"key:%@,value:%@",keys,value);        }        //2.常规遍历        NSArray *keys1 = [dic1 allKeys];        for (int i = 0; i < [keys1 count]; i++) {            id key1 = [keys1 objectAtIndexedSubscript:i];            id value1 = [dic1 objectForKey:key1];            NSLog(@"key:%@,value:%@",key1,value1);        }    }    return 0;}

输出结果如下:




0 0