iOS学习路之Objective-C(六)—— NSDictionary和NSMutableDictionary

  1. 创建一个不可变的字典

     1     //字典中的元素是成对出现的,key-value,key(键,索引),value(值,索引对应的值),两者均是id对象
     2     NSDictionary *dictionary = @{@"key":@"value", @"key2":@"value2"};
     3 #if 0
     4 #pragma mark 对象方法
     5     NSDictionary *dictionary1 = [[NSDictionary alloc] initWithDictionary:dictionary];
     6     NSDictionary *dictionary2 = [[NSDictionary alloc] initWithObjectsAndKeys:@"key",@"value", @"key2", @"value2", nil];
     7 #endif
     8
     9 #pragma mark 类方法
    10     NSDictionary *dictionary1 = [NSDictionary dictionaryWithDictionary:dictionary];
    11     NSDictionary *dictionary2 = [NSDictionary dictionaryWithObjectsAndKeys:@"key",@"value", @"key2", @"value2", nil];
  2. 获取字典中元素的个数
    1     NSDictionary *dictionary = @{@"key":@"value", @"key2":@"value2"};
    2     //@property (readonly) NSUInteger count;
    3     //作用:获取字典键值对的个数
    4     NSLog(@"%lu", [dictionary count]);
  3. 通过键找对应的值
    1     NSDictionary *dictionary = @{@"key":@"value", @"key2":@"value2"};
    2     //- (id)objectForKey:(id)aKey;
    3     //作用:通过键值寻找Value
    4     NSString *string = [dictionary objectForKey:@"key"];
    5     NSLog(@"%@", string);
  4. 获取字典中所有的key
        NSDictionary *dictionary = @{@"key":@"value", @"key2":@"value2"};
        //@property (readonly, copy) NSArray *allKeys;
        //作用:获取字典中所有的key
        NSArray *array = [dictionary allKeys];
  5. 获取字典中所有的value
        NSDictionary *dictionary = @{@"key":@"value", @"key2":@"value2"};
        //@property (readonly, copy) NSArray *allValues;
        //作用:获取所有的Value
        NSArray *array = [dictionary allValues];
  6. 创建一个可变的字典
    1 #pragma mark 对象方法
    2     NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] initWithCapacity:0];
    3 #pragma mark 类方法
    4     NSMutableDictionary *dictionary1 = [NSMutableDictionary dictionaryWithCapacity:0];
  7. 向字典中追加键值对
    1     NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithCapacity:0];
    2     //- (void)setObject:(id)anObject forKey:(id <NSCopying>)aKey;
    3     //作用:当key值在字典中已经存在,可以对键值对进行替换,如果不存在,就追加在字典尾部
    4     [dictionary setObject:@"value" forKey:@"key"];
    5     [dictionary setObject:@"value2" forKey:@"key2"];
  8. 删除字典中的键值
        NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithCapacity:0];
        [dictionary setObject:@"chen chao" forKey:@"namel"];
        [dictionary setObject:@"183" forKey:@"height"];
        [dictionary setObject:@"shuai" forKey:@"info"];
        //- (void)removeObjectForKey:(id)aKey;
        //作用:删除key对应的键值对
        [dictionary removeObjectForKey:@"info"];
  9. 修改字典
        NSDictionary *dic = @{@"key":@"value", @"key2":@"value2"};
        NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithCapacity:0];
        [dictionary setObject:@"chen chao" forKey:@"namel"];
        [dictionary setObject:@"183" forKey:@"height"];
        [dictionary setObject:@"shuai" forKey:@"info"];
        //- (void)setDictionary:(NSDictionary *)otherDictionary;
        //作用:将当前字典用另一个字典替换
        [dictionary setDictionary:dic];
时间: 2024-07-31 03:32:05

iOS学习路之Objective-C(六)—— NSDictionary和NSMutableDictionary的相关文章

IOS阶段学习第15天笔记(NSDictionary与NSMutableDictionary 字典)

IOS学习(OC语言)知识点整理 一.OC中的字典 1)字典:是一个容器对象,元素是以键-值对(key-value)形式存放的,key和value是任意类型的对象,key是唯一的,value可以重复 2)OC中的字典有两种 1.不可变字典:NSDictionary,初始化后不能修改其内容 2.可变字典:NSMutableDictionary,初始化后可以修改其内容 二.NSDictionary 字典的操作 1)实例化方法创建字典对象 例如: 1 NSDictionary *dict1=[[NSD

iOS学习路之Objective-C(一)

1:类和对象 1:oc简介 1:oc是完全兼容c的 2:oc在c的基础上增加一层最小的面向对象的语法 3:写oc工程的时候可以混入c的代码,甚至是c++的代码 4:通过oc语言可以开发ios或os x平台下应用程序 2:编程思想 1:面向过程 2:面向对象 3:面向过程编程 面向过程编程代表:c 过程:实现某个应用程序所经历的步骤,每一个步骤对应一个功能,该功能可以通过一个自定义的函数来实现 面向过程编程:首先分析实现该应用程序功能需要经历几个步骤,每个步骤通过一个自定义的函数来实现,最后把所有

IOS学习笔记3—Objective C—简单的内存管理

今天简述一下简单的内存管理,在IOS5.0以后Apple增加了ARC机制(Automatic Reference Counting),给开发人员带来了不少的方便,但是为了能更好的理解IOS内存管理机制,还是需要对其比较了解. 1.在OC中,每个对象都有一个保留计数,创建时每个对象都有一个初始值为1的保留计数,释放时,保留计数都为0 2.创建自动释放的对象 要求以一个方法创建对象时,以自动释放的形式返回该对象是一个很好的编程实践 +(Car *)car { Car *myCar = [[Car a

iOS学习路之Objective-C(二)—— 字符串

NSString对象的创建 1 //创建不可变字符串 2 NSString *string1 = @"bei jing huan ying nin"; 3 #pragma mark 对象方法创建字符串 4 //用另一个字符串初始当前字符串,指针所指地址相同 5 NSString *string2 = [[NSString alloc] initWithString:string1]; 6 //将其他的数据类型转化为字符串类型 7 NSString *string3 = [[NSStri

iOS学习路之Objective-C(四)—— NSArray

创建不可变数组NSArray 1 //创建数组的时候数组成员放在中括号中,NSLog打印时,数组是被放在小括号中 2 NSArray *array = @[@"bei", @"jing", @"huan", @"ying", @"nin"]; 3 4 #if 0 5 #pragma mark 对象方法创建数组 6 NSArray *array1 = [[NSArray alloc] initWithArra

iOS学习路之Objective-C(三)—— NSMutableString

NSMutableString可变字符串的创建 1 NSMutableString *string1 = [[NSMutableString alloc] init]; 2 //string2对象方法由创建,string3由类方法创建 3 NSMutableString *string2 = [[NSMutableString alloc] initWithCapacity:0]; 4 NSMutableString *string3 = [NSMutableString stringWithC

iOS学习路之Objective-C(五)—— NSMutableArray

创建NSMutableArray可变数组 1 //对象方法创建可变数组 2 NSMutableArray *array1 = [[NSMutableArray alloc] init]; 3 //类方法创建可变数组 4 NSMutableArray *array2 = [NSMutableArray arrayWithCapacity:0]; 向数组中添加元素 1 NSMutableArray *array = [[NSMutableArray alloc] init]; 2 NSArray *

IOS开发之旅-IOS常用数据结构NSArray、NSMutableArray、NSDictionary、NSMutableDictionary介绍

NSArray NSArray基本用法 void arrayTest1() { //数组初始化最后必须以nil结尾,表示数组元素结束 NSArray *array1 = [[NSArray alloc]initWithObjects:@"item0",@"item1",@"item2",@"item3",@"item4",nil]; NSLog(@"%@",array1); /*( it

IOS学习之路- 运行过程

1. 执行Main函数(在main.m文件中) 2. 加载MainStoryborad.storyboard文件 * 创建ViewController文件 * 根据storyboard文件中描述创建ViewController中的UIView(父层) * 创建UIView内部的所有子控件 * 将创建好的所有UIView对象跟ViewController做相应的关联(IBAction,IBoutlet  ) 3. 将程序的第一个控制器内部的UIview显示到手机屏幕上. IOS学习之路- 运行过程