您的位置:首页 > 移动开发 > IOS开发

iOS--NSDictionary

2015-07-11 12:36 405 查看



1.NSDictionary(字典类)

/*

.NSDictionary\NSMutableDictionary
* 无序
* 快速创建(不可变):@{key1 : value1,  key2 : value2}
* 快速访问元素:字典名[key]
*/

#import <Foundation/Foundation.h>

int main()
{
NSArray *persons = @[
@{@"name" : @"jack", @"qq" : @"432423423", @"books": @[@"5分钟突破iOS编程", @"5分钟突破android编程"]},
@{@"name" : @"rose", @"qq" : @"767567"},
@{@"name" : @"jim", @"qq" : @"423423"},
@{@"name" : @"jake", @"qq" : @"123123213"}
];

//
// NSDictionary *jim = persons[2];

//
NSString *bookName = persons[0][@"books"][1];
NSLog(@"%@", bookName);
//NSArray *array = persons[0][@"books"];

//NSLog(@"%@", array);

// 先取出1位置对应的字典
// 再取出字典中qq这个key对应的数据
//NSLog(@"%@", persons[1][@"qq"]);

// NSLog(@"%@", jim);
return 0;
}

void use4()
{
// 字典不允许有相同的key,但允许有相同的value(Object)
// 字典的无序的
NSDictionary *dict = @{
@"address" : @"北京",
@"name" : @"jack",
@"name2" : @"jack",
@"name3" : @"jack",
@"qq" : @"7657567765"};

//    NSArray *keys = [dict allKeys];
//
//    for (int i = 0; i<dict.count; i++)
//    {
//        NSString *key = keys[i];
//        NSString *object = dict[key];
//
//
//        NSLog(@"%@ = %@", key, object);
//    }

[dict enumerateKeysAndObjectsUsingBlock:
^(id key, id obj, BOOL *stop) {
NSLog(@"%@ - %@", key, obj);

// *stop = YES;
}];
}

void use3()
{
NSMutableDictionary *dict = @{@"name" : @"jack"};

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

void use2()
{
NSMutableDictionary *dict = [NSMutableDictionary dictionary];

// 添加键值对
[dict setObject:@"jack" forKey:@"name"];

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

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

// 移除键值对
// [dict removeObjectForKey:<#(id)#>];

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

//NSLog(@"%@", str);

NSLog(@"%@", dict);

//NSLog(@"%@", @[@"jack", @"rose"]);
}

void use()
{
/*
字典:

key ----> value
索引 ----> 文字内容

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

*/

// NSDictionary *dict = [NSDictionary dictionaryWithObject:@"jack" forKey:@"name"];

// NSArray *keys = @[@"name", @"address"];
// NSArray *objects = @[@"jack", @"北京"];

// NSDictionary *dict = [NSDictionary dictionaryWithObjects:objects forKeys:keys];

/*
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:
@"jack", @"name",
@"北京", @"address",
@"32423434", @"qq", nil];*/

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

// id obj = [dict objectForKey:@"name"];

id obj = dict[@"name"];

NSLog(@"%@", obj);

// 返回的是键值对的个数
NSLog(@"%ld", dict.count);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: