NSDictionary,NSMutableDictionary 使用

NSDictionary

key --->value
索引 --->内容
存储键值对

(1)三种创建方式:

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

  

NSArray *keys = @[@"name", @"location"];
NSArray *objects = @[@"Jony", @"China"];
NSDictionary *dict = [NSDictionary dictionaryWithObject:objects forKey:keys];
NSDictionary *dict = @{@"name" : @"Jony", @"location", @"China"};

(2)调用

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

id obj = dict[@"name"];

  

NSMutableDictionary

NSMutableDictionary *dict = [NSMutableDictionary dictionary];

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

//deleate
[dict removeObjectForKey:(id)];

NSMutableDictionary *dict = @{@"name" : @"Jony", @"location", @"China"};

  

(1)字典遍历方式

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);

//Only oneTime
*stop = YES;
}

  

   

时间: 2024-10-27 13:39:11

NSDictionary,NSMutableDictionary 使用的相关文章

NSDictionary , NSMutableDictionary, NSMutableDictionary 和 NSMutableSet)相当于java的map、set

1 NSDictionary 和 NSMutableDictionary NSDictionary  :就是java中的map; 放入对象是键值对 key-value  , 同样 秉持了一样的原则,只能放入对象,不可本体增删改; (1)初始化方法 + dictionaryWithObject:forKey: + dictionaryWithObjects:forKeys: + dictionaryWithObjectsAndKeys: 这三个是最常用的吧,注意是对象在前,key在后 2 访问 k

OC -- NSDictionary NSMutableDictionary

NSDictionary  NSMutableDictionary 只能存放OC对象,不能存放int, float, double, struct, enum类型数据 NSDictionary *dict1 = @{@"name" : @"As god name", @"address" : @"shanghai", @"program" : @"ios"}; NSDictionary

关于NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary

NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary 在 OC 中我们天天都要用,而我们要怎么学习它们呢? 我认为学习这些常用的类,使用类比的方法就行了,只要学会一个类,就能类比另外两个类了.. 比如,NSString和NSMutableString的可变与不可变,主要区分的标准是,它们本身是不是可以变,可变的一般都能增,删,改,而不可变的方法主要是创建,查看,得到元素个数或者长度等等;

NSString,NSMutableString, NSArray ,NSMutableArray,NSDictionary,NSMutableDictionary 深拷贝,浅拷贝分析

NSString,NSMutableString, NSArray ,NSMutableArray,NSDictionary,NSMutableDictionary 深拷贝,浅拷贝. 首先我们得知道什么是深拷贝,什么事浅拷贝. 简单点说深拷贝就是拷贝内容,浅拷贝就是拷贝指针. 上面那些类我们可以这样理解他们的深.浅拷贝.只要上面那些类中的NSString,NSArray,NSDictionary这三个类的实例化对象是调用copy方法进行拷贝那么他们拷贝的就是一个指针,就是说他们只是拷贝了一个指向

NSDictionary/NSMutableDictionary

NSDictionary/NSMutableDictionary 特点: (1)里存储的东西都是键值对 (2)可以像数组一样快速创建(适用 NSDictionary):@{key1 : value1, (3)快速访问元素:字典名 [key] 比如可以这样为指定 key 赋值: dic [@"key1"] = @"value1"; 快速获取 key 所对应的 value: key2 : value2} NSString *name = dic[@"name&

NSDictionary&amp;NSMutableDictionary常用操作梳理

同数组(NSArray),字典类NSDictionary也支持Object Literals,允许我们方便地基于字面量定义初始化字典对象.以下基于字面量语法快捷初始化字典(NSDictionary): NSDictionary* literalDictionary = @{@"k1":@"v1", @"k2":@"v2", @"k3":@"v3"};  1.创建初始化(Initializ

OC_ NSDictionary ,NSMutableDictionary 字典

1 数组与字典的区别 数组: 1>存放一组有序对象的集合 2> 通过index下标找对应的对象 3> 数组中对象可以重复 字典: 1>存放一组无序key-value的集合 2> 通过key找到对应的value 3>字典key是唯一的,但是不同的value可以重复 2 字典的初始化 使用一个类方法创建一个空字典(常用) NSDictionary *dic1 = [NSDictionary dictionary]; (常用) 通过字面量去创建不可变数组和不可变字典 NSAr

Objective-C NSDictionary &amp; NSMutableDictionary

现在每天要抓紧的学习了,所以争取每天能学习两个知识点,尽快把OC学习完,然后进入开发阶段! 加油. #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { #pragma mark - NSDictionary //NSDictionary //使用initWithObjectsAndKeys:方法创建字典对象 //在对象创建过程中,一次性存入多个键值对,值(v

【Foundation Frame】NSDictionary/NSMutableDictionary

NSDictionary 用于保存具有映射关系的数据,NSDictionary 包含两组数据,一组用来保存key值,一组用来保存valure值. 一个Key可以对应多个value,反过来则不可以. // //  main.m //  NSDictionary // //  Created by mac on 14-12-4. //  Copyright (c) 2014年 mac. All rights reserved. // #import<Foundation/Foundation.h>

NSDictionary NSMutableDictionary NSSet NSMutableSet

//description只是返回了一个字符串 //    [person description]; //        //如果想要打印需要NSLog //    NSLog(@"%@", [person description]);         //打印一个对象,实质打印的是description返回的字符串,如果没有重写description方法,系统默认打印<类名:指针[CDATA[]]> //    NSLog(@"%@", person