//description只是返回了一个字符串
// [person description];
// //如果想要打印需要NSLog
// NSLog(@"%@", [person description]);
//打印一个对象,实质打印的是description返回的字符串,如果没有重写description方法,系统默认打印<类名:指针[CDATA[]]>
// NSLog(@"%@", person);
// NSDictionary:不可变字典类,一旦被创建,不能修改:以key-value(键-值)的形式存放数据
// name:mike age:18
//创建
// NSDictionary *dic = [NSDictionary dictionaryWithObject:@"mike" forKey:@"name"];
// NSLog(@"%@", dic);
// name:mike age:18
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"mike", @"name", @"18", @"age", nil];
// NSLog(@"%@", dic);
//通过键,访问值
[dic objectForKey:@"name"];
NSLog(@"%@", [dic objectForKey:@"name"]);
// name:mike age:18 name:helio age:16
// NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"mike", @"name", @"18", @"age", @"helio", @"name1", @"18", @"age1", nil];
// NSLog(@"%@", dic);
// NSDictionary *dic1 = [NSDictionary dictionaryWithObjectsAndKeys:@"mike", @"name", @"18", @"age", nil];
// NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys:@"helio", @"name", @"18", @"age", nil];
//字典中以key-value存储,
//字典中key是唯一的,
//字典中的key对应的value可以重复
//创建具有多个键值对的字典时,以nil结束
//key和value不能为nil,会抛出异常
//访问字典中的元素,和数组不同,不是用的下标,而是通过键值,访问值
// NSLog(@"%@", [dic objectForKey:@"name"]);
//创建字典
//name:xiaoming age:18 gender:男 score:99.9
// NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"xiaoming", @"name", @"18", @"age", @"男", @"gender", @"99.9", @"score", nil];
// NSLog(@"%@", dic);
// //获取字典的键值对(实体)个数
// [dic count];
// NSLog(@"%lu", [dic count]);
//
// //获取所有的key
// [dic allKeys];
// NSLog(@"%@", [dic allKeys]);
//
// //获取所有的value值
// [dic allValues]; // NSLog(@"%@", [dic allValues]); // // //通过key值获取对应的value值(由于key不能重复,找到的只有一个value) // // [dic objectForKey:@"name"]; // NSLog(@"%@", [dic objectForKey:@"name"]); // [dic objectForKey:@"age"]; // [dic objectForKey:@"gender"]; // [dic objectForKey:@"score"]; //通过value值获取对应的key值(因为有相同value值得key有可能会有多个,返回的是一个数组) // NSDictionary *dic1 = [NSDictionary dictionaryWithObjectsAndKeys:@"1",@"1", @"1", @"2", @"1", @"3", @"1", @"4", nil]; // NSLog(@"%@", [dic1 allKeysForObject:@"1"]); // NSMutableDictionary:可变字典 // NSMutableDictionary *mDic = [[NSMutableDictionary alloc] initWithCapacity:0]; name:xiaoming age:18 gender:男 score:99.9 // [mDic setObject:@"xiaoming" forKey:@"name"]; // [mDic setObject:@"18" forKey:@"age"]; // [mDic setObject:@"男" forKey:@"gender"]; // [mDic setObject:@"99.9" forKey:@"score"]; // NSLog(@"%@", mDic); // [mDic setObject:@"28" forKey:@"age"]; // NSLog(@"%@", mDic); // setObject:forKey: // 如果key不存在,就把key-value存入字典 // 如果key已经存在,就修改key对应的value值 //删除一个键值对(实体); // [mDic removeObjectForKey:@"name"]; // NSLog(@"%@", mDic); //删除所有键值对 // [mDic removeAllObjects]; // NSLog(@"%@", mDic); //12 NSNumber *number = [[NSNumber alloc] initWithInt:12]; NSNumber *num2 = [NSNumber numberWithInt:12]; NSNumber *num3 = @12; //1, 2, 3, 4 // NSArray *aray1 = [[NSArray alloc] initWithObjects:@1, @2, @3, @4, nil]; // NSArray *array2 = [NSArray arrayWithObjects:@1, @2, @3, @4, nil]; // NSArray *array = @[@"1",@"2", @"3", @"4"]; //遍历 // for (int i = 0; i < [array2 count]; i++) { // NSLog(@"%@", array2[i]); // } //快速枚举 // for (NSNumber *number in array2) { // NSLog(@"%@", number); // } // name:xiaoming age:18 // NSDictionary *dictionary = [[NSDictionary alloc] initWithObjectsAndKeys:@"xiaoming", @"name", @18, @"age", nil]; // NSDictionary *dictionary1 = [NSDictionary dictionaryWithObjectsAndKeys:@"xiaoming", @"name", @18, @"age", nil]; // NSDictionary *dictionary2 = @{@"name": @"xiaoming", @"age": @18}; // // // //字典的遍历 // NSArray *keys = [dictionary allKeys]; // for (int i = 0; i < [dictionary count]; i++) { // NSLog(@"%@ : %@", keys[i], [dictionary objectForKey:keys[i]]); // } // // // //快速枚举,打印字典 // //对字典快速枚举,枚举的key // for (NSString *key in dictionary1) { // NSLog(@"%@: %@", key, [dictionary1 objectForKey:key]); // } //ios集合数据类型:NSArray,NSDictionary, NSSet // NSSet:无序的不可变集合 // 创建集合对象 // NSSet *set = [[NSSet alloc] initWithObjects:@"a", @"b", @"c", nil]; // NSLog(@"%@", set); // 获取元素个数 // // NSLog(@"%ld", [set count]); // 获取集合中的某个元素 // // [set anyObject]; // NSLog(@"%@", [set anyObject]); // // [set member:@"aaa"];//判断是否存在aaa存在就返回不存在返回nil // 获取集合中是否包含某个对象 // // BOOL flag = [set containsObject:@"%@"]; // NSMutableSet:无序的可变的集合类 //集合中的元素是不能重复的 //创建集合对象 NSMutableSet *mSet = [[NSMutableSet alloc] initWithCapacity:0]; //添加元素 [mSet addObject:@"aaa"]; [mSet addObject:@"bbb"]; NSLog(@"%@", mSet); //删除元素 [mSet removeObject:@"aaa"]; NSLog(@"%@", mSet); //删除所有集合 [mSet removeAllObjects]; NSLog(@"%@", mSet);
转载于:https://www.cnblogs.com/tian-sun/p/4309466.html