Foundation框架基础 NSDictionary-字典
2014-12-09 22:03
295 查看
#import
<Foundation/Foundation.h>
/*
key 表示键
value 表示值
【掌握】概念:字典是一个无序的集合,它使通过键值对的方式来存储数据的
key是有要求 NSCopying才能成为字典key,一般情况都是使用字符串作为字典的key
NSDictionary 不可变得字典,一经创建里面的元素就不可以改变了
Person
age:@10
name:@“张三“
*/
int
main(int
argc,
const
char * argv[]) {
@autoreleasepool
{
// 使用简便方式来创建字典
NSDictionary *dict1 =
@{@"age":@20,@"name":@"apple",@"height":@1.8};
// 字典写文件
NSString *path =
@"/Users/apple/Desktop/测试.txt";
// 如果返回YES表示写入成功
BOOL isSuccess = [dict1
writeToFile:path
atomically:YES];
if(isSuccess){
NSLog(@"写入成功!");
}
// 从文件中读取字典
NSDictionary *dict = [NSDictionary
dictionaryWithContentsOfFile:path];
NSLog(@"%@",dict);
}
return
0;
}
void
testBianLi()
{
// 使用简便方式来创建字典
NSDictionary *dict1 =
@{@"age":@20,@"name":@"apple",@"height":@1.8};
// 第一种方式:先取出字典中的keys,然后使用数组的方式对keys遍历
// 取出所有key
// [dict1 allKeys];
NSArray *keys = dict1.allKeys;
// 使用数组方式来遍历keys
// for (NSString *key in keys) {
//
// NSLog(@"%@ = %@",key,dict1[key]);
//
// }
//// 第二种方式,使用增强for(掌握)
// for (NSString *key in dict1) {
// NSLog(@"%@ = %@",key,dict1[key]);
// }
// 第三种方式 枚举器(不常用)
NSEnumerator *keyEnumerator = dict1.keyEnumerator;
NSString *key =
nil;
while ((key = keyEnumerator.nextObject))
{
NSLog(@"%@ = %@",key,dict1[key]);
}
// 取出字典中所有值
NSArray *values = dict1.allValues;
for (id
value
in values) {
NSLog(@"%@",value);
}
// 第四种 使用block的方式
[dict1
enumerateKeysAndObjectsUsingBlock:^(id
key,
id obj,
BOOL *stop) {
NSLog(@"%@ : %@",key,obj);
}];
}
void
testDictCreate()
{
// 创建一个字典对象,value,key,value,key,值,键... 来创建的
NSDictionary *dict = [NSDictionary
dictionaryWithObjectsAndKeys:@10,@"age",@"张三",@"name",
nil];
NSLog(@"%@",dict);
// 取出某个键所对应的值
NSNumber *number = [dict
objectForKey:@"age"];
NSLog(@"%@",number);
// 简便的取值方式(常用)
NSString *name = dict[@"name"];
NSLog(@"%@",name);
// 使用简便方式来创建字典
NSDictionary *dict1 =
@{@"age":@20,@"name":@"apple",@"height":@1.8};
NSNumber *age1 = dict1[@"age"];
NSLog(@"%@",age1);
NSLog(@"%@",dict1);
// 取出字典长度,字典中有几个键值对
long len = dict1.count;
len = [dict1
count];
NSLog(@"%zd",len);
}
<Foundation/Foundation.h>
/*
key 表示键
value 表示值
【掌握】概念:字典是一个无序的集合,它使通过键值对的方式来存储数据的
key是有要求 NSCopying才能成为字典key,一般情况都是使用字符串作为字典的key
NSDictionary 不可变得字典,一经创建里面的元素就不可以改变了
Person
age:@10
name:@“张三“
*/
int
main(int
argc,
const
char * argv[]) {
@autoreleasepool
{
// 使用简便方式来创建字典
NSDictionary *dict1 =
@{@"age":@20,@"name":@"apple",@"height":@1.8};
// 字典写文件
NSString *path =
@"/Users/apple/Desktop/测试.txt";
// 如果返回YES表示写入成功
BOOL isSuccess = [dict1
writeToFile:path
atomically:YES];
if(isSuccess){
NSLog(@"写入成功!");
}
// 从文件中读取字典
NSDictionary *dict = [NSDictionary
dictionaryWithContentsOfFile:path];
NSLog(@"%@",dict);
}
return
0;
}
void
testBianLi()
{
// 使用简便方式来创建字典
NSDictionary *dict1 =
@{@"age":@20,@"name":@"apple",@"height":@1.8};
// 第一种方式:先取出字典中的keys,然后使用数组的方式对keys遍历
// 取出所有key
// [dict1 allKeys];
NSArray *keys = dict1.allKeys;
// 使用数组方式来遍历keys
// for (NSString *key in keys) {
//
// NSLog(@"%@ = %@",key,dict1[key]);
//
// }
//// 第二种方式,使用增强for(掌握)
// for (NSString *key in dict1) {
// NSLog(@"%@ = %@",key,dict1[key]);
// }
// 第三种方式 枚举器(不常用)
NSEnumerator *keyEnumerator = dict1.keyEnumerator;
NSString *key =
nil;
while ((key = keyEnumerator.nextObject))
{
NSLog(@"%@ = %@",key,dict1[key]);
}
// 取出字典中所有值
NSArray *values = dict1.allValues;
for (id
value
in values) {
NSLog(@"%@",value);
}
// 第四种 使用block的方式
[dict1
enumerateKeysAndObjectsUsingBlock:^(id
key,
id obj,
BOOL *stop) {
NSLog(@"%@ : %@",key,obj);
}];
}
void
testDictCreate()
{
// 创建一个字典对象,value,key,value,key,值,键... 来创建的
NSDictionary *dict = [NSDictionary
dictionaryWithObjectsAndKeys:@10,@"age",@"张三",@"name",
nil];
NSLog(@"%@",dict);
// 取出某个键所对应的值
NSNumber *number = [dict
objectForKey:@"age"];
NSLog(@"%@",number);
// 简便的取值方式(常用)
NSString *name = dict[@"name"];
NSLog(@"%@",name);
// 使用简便方式来创建字典
NSDictionary *dict1 =
@{@"age":@20,@"name":@"apple",@"height":@1.8};
NSNumber *age1 = dict1[@"age"];
NSLog(@"%@",age1);
NSLog(@"%@",dict1);
// 取出字典长度,字典中有几个键值对
long len = dict1.count;
len = [dict1
count];
NSLog(@"%zd",len);
}
相关文章推荐
- 【黑马程序员】【Foundation框架】字典NSDictionary和NSMutableDictionary
- objective-c 编程基础(3.7 Foundation框架之字典)
- 【IOS 开发学习总结-OC-31】★★OC之foundation 框架——字典(NSDictionary 与 NSMutableDictionary)
- Foundation框架—字典NSDictionary 可变和不可变
- 黑马程序员——IOS基础——Foundation框架——字典、集合类、NSNumber/NSValue、NSObject、反射
- OC基础—集合之NSSet、NSDictionary(字典)、NSMutableDictionary
- Foundation框架学习2--数组、字典、集合
- Foundation——NSDictionary(字典)
- Foundation框架NSDictionary
- Objective-C之Foundation框架中的NSDictionary的用法以及它的遍历方法
- OC基础——Foundation框架之结构体和字符串
- Foundation-02字典NSDictionary 和NSMultableDictionary
- ios - Foundation框架 - NSDictionary
- Foundation框架基础 NSArray
- 黑马程序员-Foundation框架之数组和字典
- OC基础-Foundation框架-0321-常见结构体和NSString
- 黑马程序员-Foundation框架-NSDictionary
- Objective-C ,ios,iphone开发基础:NSDictionary(字典) 和 NSMutableDictionary
- Foundation基础框架2
- 黑马程序员——IOS基础——Foundation框架——结构体、字符串、数组