【Foundation Frame】NSDictionary/NSMutableDictionary
// main.m
// NSDictionary
//
// Created by mac on 14-12-4.
// Copyright (c) 2014年 mac. All rights reserved.
//
#import<Foundation/Foundation.h>
void staticCreatDictionary()
{
NSDictionary * dict = [NSDictionarydictionary];
dict = [NSDictionarydictionaryWithObject:@"dictonary0"forKey:@"key1"];
dict = [NSDictionarydictionaryWithObjectsAndKeys:@"Dictionary1",@"key2",@"Dictionary2",@"key3",@"Dictionary3",@"key4",nil];
NSDictionary * dict1 = [NSDictionarydictionaryWithDictionary:dict];
NSLog(@"DICTIONARY:%@",dict1);
NSArray * keyArray = [NSArrayarrayWithObjects:@"k1",@"k2",@"k3",@"k4",@"k5",nil];
NSArray * valureArray = [NSArrayarrayWithObjects:@"Hello1",@"Hello2",@"Hello3",@"Hello4",@"Hello5",nil];
//通过数组创建
dict = [NSDictionarydictionaryWithObjects:valureArrayforKeys:keyArray];
NSLog(@"%@",dict);
//通过文件创建
NSDictionary * dict3 ;
dict3 = [NSDictionarydictionaryWithContentsOfFile:@"/Users/mac/desktop/a.txt"];
NSLog(@"Ditc3:%@",dict3);
}
void others()
{ NSDictionary * dict ;
dict = [NSDictionarydictionaryWithObjectsAndKeys:@"Dictionary1",@"key2",@"Dictionary2",@"key3",@"Dictionary3",@"key4",nil];
//计数字典大小
NSUInteger count = [dictcount];
NSLog(@"%lu",count);
//判断是否两个字典是否相同
NSDictionary * dict1;
dict1 = [NSDictionarydictionaryWithObject:@"dictonary0"forKey:@"key1"];
NSLog(@"%i",[dictisEqualToDictionary:dict1]);
[dict writeToFile:@"/Users/mac/desktop/a.txt"atomically:YES];
}
void keyAndValure()
{
NSDictionary * dict3 ;
dict3 = [NSDictionarydictionaryWithContentsOfFile:@"/Users/mac/desktop/a.txt"];
//返回所有key
NSArray * keysAtrray = [dict3allKeys];
NSLog(@"%@",keysAtrray);
//返回一个对象对应的所有key
NSArray * keyArray = [dict3allKeysForObject:@"Dictionary1"];
NSLog(@"%@",keyArray);
//返回一个key对应的valure
id obj = [dict3objectForKey:@"key2"];
NSLog(@"%@",obj);
//返回一组key对应的valure
NSArray * valureArray = [dict3objectsForKeys:keysAtrraynotFoundMarker:@"NoFound"];
NSLog(@"%@",valureArray);
}
void ergodic()
{
NSDictionary * dict3 ;
dict3 = [NSDictionarydictionaryWithContentsOfFile:@"/Users/mac/desktop/a.txt"];
//快速遍历
for (id key in dict3) {
NSLog(@"%@",[dict3objectForKey:key]);
}
//迭代器方法遍历
NSEnumerator * keyEnum = [dict3keyEnumerator];
id obj;
while (obj = [keyEnumnextObject]) {
NSLog(@"%@",obj);
}
NSEnumerator * valureEnum = [dict3objectEnumerator];
id obj1;
while (obj1 = [valureEnumnextObject]) {
NSLog(@"%@",obj1);
}
//block方法遍历
[dict3 enumerateKeysAndObjectsUsingBlock:^(id key, id obj,BOOL *stop) {
NSLog(@"%@ %@",key,obj);
NSString * keyJuge = key ;
if ([keyJugecompare:@"key3"]==0) {
*stop = YES ;
}
}];
}
void mutableDictionary()
{
//动态创建
NSMutableDictionary * dynamicDict;
NSArray * valueArray = [NSArrayarrayWithObjects:@"Hello1",@"Hello2",@"Hello3",@"Hello4",nil];
NSArray * keyArray = [NSArrayarrayWithObjects:@"1",@"2",@"3",@"4",nil];
dynamicDict = [NSMutableDictionarydictionaryWithObjects:valueArrayforKeys:keyArray];
NSLog(@"%@",dynamicDict);
//替换元素元素
[dynamicDict setObject:@"What"forKey:@"1"];
//删除元素
[dynamicDict removeObjectForKey:@"1"];
@autoreleasepool {
// insert code here...
NSLog(@"Hello, World!");
// staticCreatDictionary();
// others();
// keyAndValure();
// ergodic();
mutableDictionary();
}
return0;
转载于:https://www.cnblogs.com/shujucn/p/7481459.html
【Foundation Frame】NSDictionary/NSMutableDictionary相关推荐
- 【视频相关】视频中常出现的参数解释——2018年6月16日
视频中常出现的参数解释 [帧 Frame] 帧速率(FPS,frame per second 帧率):每秒钟出现的帧数 由胶片概念的产生而出现,把静态的连续画面进行播放以达到动态影像需要每秒出现8格, ...
- 【IOS 开发】Objective-C Foundation 框架 -- 字符串 | 日期 | 对象复制 | NSArray | NSSet | NSDictionary | 谓词
一. 字符串 API 1. NSString 用法简介 (1) NSString API 介绍 NSString 功能 : -- 创建字符串 : 使用 init 开头的实例方法, 也可以使用 Stri ...
- 【响应式】foundation栅格布局的“尝鲜”与“填坑”
提到响应式,就不得不提两个响应式框架--bootstrap和foundation.在标题上我已经说明白啦,今天给大家介绍的是foundation框架. 何为"尝鲜"?就是带大伙 ...
- 【安全开发】IOS安全编码规范
申明:本文非笔者原创,原文转载自:https://github.com/SecurityPaper/SecurityPaper-web/blob/master/_posts/2.SDL%E8%A7%8 ...
- 【iOS 开发】Objective-C 运算符
博客地址 : http://blog.csdn.net/shulianghan/article/details/41624613 参考文章 : 1.[iOS 开发]Object-C 运算符 2.[iO ...
- 【原】iOSCoreAnimation动画系列教程(二):CAKeyFrameAnimation【包会】
在上一篇专题文章[原]iOSCoreAnimation动画系列教程(一):CABasicAnimation[包会]中我们学习了iOS核心动画CoreAnimation中CABasicAnimation ...
- 【Blender Python】随手一记
[Blender Python]随手一记 一个猴头复制另一个猴头的形状 import bpydef update_mesh(scene):o1 = bpy.data.objects['猴头']o2 = ...
- 【生信】常见测序数据格式
[生信]常见测序数据格式 文章的文字与图片全部/部分来源网络或学术论文,文章会持续修缮更新,仅供大家学习使用. 目录 [生信]常见测序数据格式 1.FASTA 2.FASTQ 3.GFF 4.BED ...
- 【iOS开发】从Cocoa框架说开去--Fundation框架系列
[Cocoa简介] Cocoa是苹果公司为Mac OS X所创建的原生面向对象API 是Mac OS X上五大API之一.(其他四个:Carbon POSIX X11 Java)它是苹果的面向对象开发 ...
最新文章
- 【转】卡尔曼滤波算法详细推导(相当值得一看)
- 鼠標滑過表格整行改變背景色
- 开源的ResearchKit:苹果将如何颠覆未来医疗?
- C++ 性能剖析 (四):Inheritance 对性能的影响
- python 删除文件或文件夹
- SpringSecurity + JWT,从入门到精通!
- ArrayList方法源码
- Classification分类halcon算子,持续更新
- MATLAB库函数resample(重新采样序列)的C语言实现
- 前端学习(2831):小程序事件绑定
- 使用Powershell远程管理Windows Server(WinRM)
- gstat | 空间插值(二)——克里金插值之普通克里金
- POJ-2226 Muddy Fields 最小点集覆盖
- SQL到NoSQL概览性总结之一 数据库应用场景选型
- Spring4 快速入门
- Flink on K8s 在京东的持续优化实践
- thinkphp 中英文语言包
- 纪念王盘声逝世一周年王派演唱会成功举行
- 管家婆服务器安装显示配置失败,管家婆软件安装出错解决方法
- 2012年西安校园招聘会