Foundation -- OC集合 --NSDictionary

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------



  NSDictionary


/*

 集合

 1. NSArray / NSMutableArray

 

 有序

 快速创建(不可变) : @[obj1,obj2,obj3];

 快速访问元素 : 数组名[i];

 

 2. NSSet  /  NSMutableSet

 无序

 

 3. NSDictionary / NSMutableDictionary

 无序

 快速创建 (不可变) : @{key1 : value1, key2 : value2}

 快速访问元素: 字典名[key]

 

 */


#import <Foundation/Foundation.h>


int main(int argc, const char * argv[]) {

    NSArray *persons = @[

                         @{@"name" : @"jack", @"qq" : @"432423423", @"books": @[@"5分钟突破iOS编程", @"5分钟突破android编程"]},

                         @{@"name" : @"rose", @"qq" : @"767567"},

                         @{@"name" : @"jim", @"qq" : @"423423"},

                         @{@"name" : @"jake", @"qq" : @"123123213"}

                         ];

    NSString *BookName = persons[0][@"books"][0];

    NSLog(@"%@",BookName);

   

    return 0;

}


void test4()

{

    //字典不允许有相同的key,但允许有相同的value(Object)

    //字典是无序的

    

    NSDictionary *dict = @{

                           @"address" : @"北京",

                           @"name" : @"jack",

                           @"name2" : @"jack",

                           @"name3" : @"jack",

                           @"qq" : @"123124"};

    

    [dict enumerateKeysAndObjectsUsingBlock:

     ^(id key, id obj, BOOL *stop) {

         NSLog(@"%@ - %@",key,obj);

     }];

}

void test3()

{

    NSDictionary *dict = @{@"name" : @"jack"};

    [dict setValue:@"rose" forKey:@"name"];

    NSLog(@"%@",dict);

}


void test2()

{

    //添加键值对

    NSMutableDictionary * dict = [NSMutableDictionary dictionary];

    

    [dict setObject:@"jack" forKey:@"name"];

    [dict setObject:@"北京" forKey:@"address"];

    //后边的name 覆盖前边的name

    [dict setObject:@"rose" forKey:@"name"];

    NSLog(@"%@",dict);

    

    //移除键值对

    [dict removeObjectForKey:@"name"];

    

    //NSString *str = dict[@"name"];

    NSLog(@"%@",dict);

}

void test()

{

    //字典

    

    //key-----value(Object)

    //索引-----文字内容

    

    //里面存储的东西都键值对

    

    NSDictionary *dict = @{@"name" : @"jack" , @"age" : @"10" ,@"address" : @"北京"};

    

    //访问

    id obj = dict[@"name"];

    

    NSLog(@"%@",obj);

    

    //返回键值对的个数

    

    NSLog(@"%ld",dict.count);

    

}



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值