objective-c - 基础篇 - NSDirctionary与NSMutableDirctionary
2016-03-26 22:08
435 查看
注意点:字典是无序的,采取的是 键值 的形式,类似于JAVA中的map
一、NSDirctionary类
#import <Foundation/Foundation.h>
int main(int argc, const charchar * argv[]){
@autoreleasepool{
NSArray * array1 = [NSArray arrayWithObjects:@"zhangsan", @"china", nil];
NSArray * array2 = [NSArray arrayWithObjects:@"wangwu", @"japan", nil];
//1 -- 创建字典 -- initWithObjectAndKeys方法
NSDictionary * dict =
[NSDictionary alloc]initWithObjectAndKey:array1,@"zhang", array2, @"li" ,nil];
NSLog(@"%@", dict);
//2 -- 存放一个元素 -- dictionaryWithObject方法
NSDictionary * dict2 = [NSDicationary dictionaryWithObject:array1 forkey:@"zhang"];
//3 -- 获取所有的key -- allKey方法
NSArray * allkeys = [dict allkeys];
//4 -- 获取所有的value -- allvalues方法
NSArray * allvalues = [dict allValues];
//5 -- 优化的语法
NSDictionary * dict5 = @{@"zhangsan":array1, @"lisi",array2};
}
}
二、NSMutableDirctionay类
#import <Foundation/Foundation.h>
int main(int argc, const charchar * argv[]){
//1 -- 创建字典,开辟空间
NSMutableDictionary * md1 = [[NSMutableDictionary alloc]initWithCapacity:3];
NSArray * array1 = [[NSArray alloc]initWithObject:@"zhangsan",@"lisi", nil];
//2 -- 添加元素 -- addEtriesFromDictionary方法
[md1 setObject: array1 forkey:@"zhang"];
NSMutableDictionary * md2 = [[NSMutableDictionary alloc]initWithCapacity:3];
[md2 addEtriesFromDictionary:md1];
//3 -- 删除元素 -- removeObjectForKey/removeAllObjects/removeObjectsForKeys方法
[md1 removeObjectForKey:@"zhang"]; //以key删除
[md1 remvoreAllObjects];//删除所有元素
[md1 removeObjectsForKeys:array1];//以value删除
//4 -- 遍历字典
//快速遍历
for(NSString *key in md1){
NSArray * values = [md1 objectForKey:key];
for(NSString * v in values){
MSLog(@"%@", v);
}
}
//普通遍历
NSArray * allkey = [md1 allkeys];
for(int i =0 ; i < allkey.count; i++){
NSArray * value = [md1 objectForKey:all
}
}
一、NSDirctionary类
#import <Foundation/Foundation.h>
int main(int argc, const charchar * argv[]){
@autoreleasepool{
NSArray * array1 = [NSArray arrayWithObjects:@"zhangsan", @"china", nil];
NSArray * array2 = [NSArray arrayWithObjects:@"wangwu", @"japan", nil];
//1 -- 创建字典 -- initWithObjectAndKeys方法
NSDictionary * dict =
[NSDictionary alloc]initWithObjectAndKey:array1,@"zhang", array2, @"li" ,nil];
NSLog(@"%@", dict);
//2 -- 存放一个元素 -- dictionaryWithObject方法
NSDictionary * dict2 = [NSDicationary dictionaryWithObject:array1 forkey:@"zhang"];
//3 -- 获取所有的key -- allKey方法
NSArray * allkeys = [dict allkeys];
//4 -- 获取所有的value -- allvalues方法
NSArray * allvalues = [dict allValues];
//5 -- 优化的语法
NSDictionary * dict5 = @{@"zhangsan":array1, @"lisi",array2};
}
}
二、NSMutableDirctionay类
#import <Foundation/Foundation.h>
int main(int argc, const charchar * argv[]){
//1 -- 创建字典,开辟空间
NSMutableDictionary * md1 = [[NSMutableDictionary alloc]initWithCapacity:3];
NSArray * array1 = [[NSArray alloc]initWithObject:@"zhangsan",@"lisi", nil];
//2 -- 添加元素 -- addEtriesFromDictionary方法
[md1 setObject: array1 forkey:@"zhang"];
NSMutableDictionary * md2 = [[NSMutableDictionary alloc]initWithCapacity:3];
[md2 addEtriesFromDictionary:md1];
//3 -- 删除元素 -- removeObjectForKey/removeAllObjects/removeObjectsForKeys方法
[md1 removeObjectForKey:@"zhang"]; //以key删除
[md1 remvoreAllObjects];//删除所有元素
[md1 removeObjectsForKeys:array1];//以value删除
//4 -- 遍历字典
//快速遍历
for(NSString *key in md1){
NSArray * values = [md1 objectForKey:key];
for(NSString * v in values){
MSLog(@"%@", v);
}
}
//普通遍历
NSArray * allkey = [md1 allkeys];
for(int i =0 ; i < allkey.count; i++){
NSArray * value = [md1 objectForKey:all
}
}
相关文章推荐
- 解决Hibernate删除异常:deleted object would be re-saved by cascade
- objective-C学习笔记(十一)类别和扩展
- Assigning retained object to weak variable
- Jackson实现Object对象与Json字符串的互转
- 66.enumerateObjects遍历方法详解
- JAVA中Object的equals和hashCode的关联
- Object-C基础(4)—— 函数
- Object的clone()方法、深拷贝、浅拷贝
- JSONObject json = JSONObject.fromObject(josnStr);报错
- ORA-00020: No more process state objects available故障一例
- Delphi_03_Delphi_Object_Pascal_基本语法_01
- objective-C学习笔记(十)协议
- objective-c C类型数组
- 地图和定位
- java和scala互操作之不能读取嵌套object
- Assigning retained object to unsafe property;object will be released after assignment
- Object-C基础(3)—— 流程控制与数组
- iOS : Objective-C to Wax (OC 转 Wax) 笔记
- NSObject+MZCExpansion.h
- IOS基础:深入理解Objective-c中@class的含义