NSDictionary的初始化和一些常用的方法总结

 NSDictionary

    //初始化1。

    NSDictionary *dic11=[[NSDictionary alloc] initWithObjects:@[@"qwe",@"asd",@"zxc",@"qaz",@"wsx"] forKeys:@[@"111",@"222",@"333",@"444",@"555"]];

   

    //分别获取所有的键, 值

    NSLog(@"%@",dic11.allKeys);

    NSLog(@"%@",dic11.allValues);

    //获取字典键值对总数

    NSLog(@"%d",(dic11.count));

    //字典遍历,快速枚举

    for (id key in dic11) {

        id value=[dic11 objectForKey:key];

        NSLog(@"%@:%@",key,value);

    }

   

    //不可变字典一样可以字面常量初始化,key在前,value在后.

    NSDictionary *dic00=@{@"keya":@"aaa",@"keyb":@111};

    NSLog(@"%@",dic00);

 

 

 //初始化的其他方法

   //一个键值对字典的初始化

 

    NSDictionary *dic1=[NSDictionary dictionaryWithObject:@"10001" forKey:@"000"];

 

  //内容与dic1一样的字典初始化

 

 NSDictionary *dic0=[NSDictionary dictionaryWithDictionary:dic1];

 

   

 //多个键值对字典的初始化1

 NSDictionary *dic2=[NSDictionary dictionaryWithObjects:@[@"11",@"22",@"33",@"44"] forKeys:@[@"first",@"second",@"third",@"four"]];

 

    

 

 //多个键值对字典的初始化2

NSDictionary *dic3=[NSDictionary dictionaryWithObjectsAndKeys:@"湘小几把一号是逗帝",@"逗帝",@"娘一号",@"逗圣",@"祥几把",@"逗战圣佛",nil];

 

  NSLog(@"%@",dic3[@"逗帝"]);

 

    

//建立一个内容与dic2一样的可变字典

    NSMutableDictionary *dic4=[NSMutableDictionary dictionaryWithDictionary:dic2];

 

 

//插入一个键值对,有同名的,则覆盖原来的值

    [dic4 setObject:@"jjj" forKey:@"jiji"];

    NSLog(@"%@",dic4);

    

 

    //插入某一个键值对,有同名的,则覆盖原来的值

    [dic4 setObject:@"999" forKeyedSubscript:@"lan"];

    [dic4 setObject:@"004" forKeyedSubscript:@"four"];

    NSLog(@"%@",dic4);

    

    

    //将dic1拼接到dic前面

     [dic4 addEntriesFromDictionary:dic1];

     NSLog(@"%@------",dic4);

    

    //移除某一个键值对

    [dic4 removeObjectForKey:@"third"];

    NSLog(@"%@",dic4);

    

    //将数组里的key对应的键值对移除

    [dic4 removeObjectsForKeys:@[@"five",@"000"]];

    NSLog(@"%@",dic4);

    

    //将dic4原来的内容全部都替换成dic11的内容

    [dic4 setDictionary:dic11];

    NSLog(@"%@",dic4);

    

    //将字典的内容保存到指定路径的文件中

    [dic4 writeToFile:@"/Users/apple/Desktop/dic4.plist" atomically:YES];

    

    //从指定路径中读取文件内容

    NSDictionary *dic5=[NSDictionary dictionaryWithContentsOfFile:@"/Users/apple/Desktop/dic4.plist"];

    NSLog(@"%@",dic5);

    //dict3和dict2的内容完全相同,实质上是一个新的对象.

   

    

    //字典的一种从指定路径文件获取内容的初始化方法。文件必须存在,不然内容是空的。

    NSDictionary *dic6=[[NSDictionary alloc] initWithContentsOfFile:@"/Users/apple/Desktop/dic4.plist"];

    NSLog(@"%@",dic6);

    

 

    //移除所有键值对。

    [dic4 removeAllObjects];

    NSLog(@"%@",dic4);

转载于:https://www.cnblogs.com/lucan727/p/3883666.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值