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

 

NSDictionary NSMutableDictionary NSSet NSMutableSet的更多相关文章

  1. 黑马程序员——OC语言Foundation框架 (2) NSArray NSSet NSDictionary\NSMutableDictionary

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)NSArray 1>NSArray :不可变数组 ①创建方法 ...

  2. Objective-C学习篇08—NSDictionary与NSSet

    NSDictionary与NSMutableDictionary NSSet与NSMutableSte 字典 字典:字典分为可变字典NSDictionary和不可变字典NSMutableDiction ...

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

    NSString,NSMutableString,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary 在 OC 中我们天天都要用,而我们要怎 ...

  4. Foundation框架之NSArray、NSDictionary、NSSet及其Mutable类型

    Foundation框架之NSArray.NSDictionary.NSSet及其Mutable类型 目录 概述——对Foundation框架集合类的理解 NSArray NSDictionary N ...

  5. NSArray,NSMutable和NSSet,NSMutableSet和NSDictionary,NSMutableDictionary用法

    开始编写应用程序的代码时,可以利用大量的 Objective-C 框架.其中,为所有应用程序提供基本服务的 Foundation 框架尤为重要.Foundation 框架包括表示基本数据类型的值类(如 ...

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

    1 NSDictionary 和 NSMutableDictionary NSDictionary  :就是java中的map; 放入对象是键值对 key-value  , 同样 秉持了一样的原则,只 ...

  7. 黑马程序员——OC语言Foundation框架 NSArray NSSet NSDictionary\NSMutableDictionary

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一) NSNumber 将各种基本数据类型包装成NSNumber对象 @ ...

  8. OC中NSDictionary和NSSet简单操作

    /** *  字典 存放键值对类型的数据 存放数据是无序的 */ // 字典在控制台输出是用{}包括起来的 // NSDictionary 不可变字典 // 1.创建对象 // 初始化方法 NSDic ...

  9. objective-c系列-NSDictionary&NSMutableDictionary

    ********************************************* NSDictionary ***************************************** ...

随机推荐

  1. denyhosts配置详解

    DenyHosts官方网站为:http://denyhosts.sourceforge.net 用DenyHosts可以阻止试图猜测SSH登录口令,它会分析/var/log/secure等日志文件,当 ...

  2. oc 中的id类型与类型转换

    id是oc语言中一个独特的数据类型.一种通用对象类型.可以转换为任何数据类型,即id类型的变量可以存放任何数据类型的对象. 使用示例: Animal * dog = [[Dog alloc]init] ...

  3. 通过IP地址进行精准定位

    可能会遇到这样的问题,服务器或者系统经常被扫描,通过IP地址我们只能查到某一个市级城市,如下图: 当我们想具体到街道甚至门牌号,该怎么办??? 偶然间发现百度地图有高精度IP定位API的接口,通过该接 ...

  4. java编写一个汽车类,有属性:品牌、型号、排量、速度,有方法:启动、加速、转弯、刹车、息火

    /* * 汽车实体类 * 类里面有属性和方法 */public class Car {    String  brand;   //汽车品牌    String modelNumber; //汽车型号 ...

  5. vps hiformance 设置备忘

    ssr一键安装脚本 wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/ ...

  6. Javascript系列:总体理解

    js是一个脚本客户端(浏览器)语言.和sql html类似.多练习. 没有排错的经验,弱类型语言,浏览器解释执行,出错也不会报错 预备 <!DOCTYPE html PUBLIC "- ...

  7. python简单基础代码

    1.从键盘输入两个数,并计算A的B次幂:number1=raw_input('input number1:')number2=raw_input('input number2:')print 'num ...

  8. 2.Add Two Numbers (List)

    You are given two linked lists representing two non-negative numbers. The digits are stored in rever ...

  9. Petya and Graph(最小割,最大权闭合子图)

    Petya and Graph http://codeforces.com/contest/1082/problem/G time limit per test 2 seconds memory li ...

  10. phpStudy6——php导出可以设置样式的excel表格

    前言: 一般的后台管理页面肯定少不了excel表格导出的功劳,尤其是那些电商平台的订单导入导出,用户列表的导入导出等,那么本文就介绍php是如何导出excel表格的. php导出excel方法有很多, ...