zoukankan      html  css  js  c++  java
  • 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);

  • 相关阅读:
    关于jpa的Specification自定义函数,实现oracle的decode;以及如何在静态方法中调用注入的service
    转载-logbock.xml
    sql学习指南--持续更新
    转载-有时间担心中年危机,还不如用忧虑的时间来提升自己——再论程序员该如何避免所谓的中年危机
    转载-缓存
    转载-SpringBoot开发案例之整合日志管理
    转载-Spring Boot应用监控实战
    乐观锁 与 悲观锁
    独占锁 和 共享锁
    自旋锁
  • 原文地址:https://www.cnblogs.com/lucan727/p/3883666.html
Copyright © 2011-2022 走看看