NSMutableDictionary--可变字典

//
//  main.m
//  OC05-task-02
//
//  Created by Xin the Great on 15-1-25.
//  Copyright (c) 2015年 Xin the Great. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
        ///////////////NSMutableDictionary--可变字典///////////////

        //初始化可变字典
        //空的字典
        NSMutableDictionary *dic1 = [NSMutableDictionary dictionary];
        NSLog(@"dic1 is %@", dic1);

        //给字典预期的一个空间
        NSMutableDictionary *dic2 = [NSMutableDictionary dictionaryWithCapacity:10];

        //添加元素
        [dic1 setObject:@"value1" forKey:@"key1"];
        [dic1 setObject:@"value2" forKey:@"key2"];
        [dic1 setObject:@"value3" forKey:@"key3"];

        //设置键值对,如果key已经存在,则是修改key所对应的value, 如果不存在,则创建一个新的键值对
        [dic1 setObject:@"value4" forKey:@"key4"];

        NSLog(@"dic1 is %@", dic1);

        //删除元素
        //删除指定的元素
        [dic1 removeObjectForKey:@"key2"];
        NSLog(@"dic1 is %@", dic1);

        //删除所有的元素
        [dic1 removeAllObjects];
        NSLog(@"dic1 is %@", dic1);

        //字典的遍历
        NSDictionary *dic = @{@"k1":@"v1",
                              @"k2":@"v2",
                              @"k3":@"v3",
                              @"k4":@"v4",
                              @"k5":@"v5",};

        //传统遍历

        NSArray *keys = [dic allKeys];

        for (int i = 0; i < dic.count; i++) {
            //获取key
            NSString *key = keys[i];
            NSString *value = dic[key];
            NSLog(@"value[%@] is %@", key, value);
        }

        NSLog(@"------------------------------");

        //快速遍历, 快速遍历效率要高于传统遍历
        for (NSString *key in dic) {
            NSString *value = dic[key];
            NSLog(@"value[%@] is %@", key, value);
        }

    }
    return 0;
}

时间: 2024-08-04 10:28:58

NSMutableDictionary--可变字典的相关文章

Objective - C NSDictionary不可变字典和NSMutableDictionary可变字典

//创建一个不可变的字典对象 //便利构造器创建 NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"zhonger", @"name2", @"taixu", @"name1", @"caicai", @"name3", nil]; //初始化方法 //先给value 再给key NSDictionary *

OC中NSDictionary(字典)、NSMutableDictionary(可变字典)、NSSet(集合)、NSMutableSet(可变集合)得常用方法

字典用于保存具有映射关系数据的集合 一个key—value对认为是一个条目(entry),字典是存储key—value对的容器 与数组不同,字典靠key存取元素 key不能重复,value必须是对象 键值对在字典中是无序存储的 字典分:不可变字典(NSDictionary)和可变字典(NSMutableDictionary) 不可变字典一旦创建,键值对就不可更改,不可添加,不可删除,仅能读取key或者value 常用方法有: 1.创建字典对象 2.获取所有key值,获取所有value值 3.通过

objective-c可变字典

@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); 1 #pragma mark *****************************字典********************************  2 //        字典:通过key来取值的 key值必须是成对出现的,key不能为空(nil)  3 

OC基础 可变字典与不可变字典的使用

OC基础 可变字典与不可变字典的使用 1.不可变字典 1.1创建不可变字典 //创建字典 //注意: //1,元素个数是偶数 //2,每两个元素是一个键值对 //3,值在前,键在后 NSDictionary *dic = [[NSDictionary alloc] initWithObjectsAndKeys:@"huang",@"name",@"30",@"age", nil]; NSLog(@"%@",

Objective-C 字典、可变字典

字典相当于c++ stl中的map 字典NSDictionary 1 #import <UIKit/UIKit.h> 2 #import "AppDelegate.h" 3 4 int main(int argc, char * argv[]) { 5 // 从@符号创建字典 实际上就是键值对容器 6 NSDictionary *dict = @{@"name":@"zhangsan",@"sex":@"

利用runtime,避免UIButton 重复点击, 可变数组和可变字典为nil,或者数组越界导致的崩溃

Demo链接: https://github.com/ShaoWenLe/Runtimer-Demo.git 参考文章: http://www.jianshu.com/p/080a238c62b9 相关Runtime介绍: http://www.cocoachina.com/ios/20160523/16386.html http://www.cocoachina.com/ios/20160628/16843.html 1 #import <Foundation/Foundation.h> 2

字典与可变字典

字典的定义以及使用 不可变字典 1.在字典里 键 和 值是成对出现的    字典是通过键(Key)来存取值的且每一个值对应的Key是唯一的   字典的类名是NSDictionary 2.字典的定义  (1)初始化一个空字典 NSDictionary *dic = [[NSDictionary alloc] init]; NSDictionary *dic1 = [NSDictionary dictionary]; (2)初始化的同时添加一对键值  这种定义方式是前面是值(id)  后面是键 NS

OC中关于字典(可变字典)的使用---连载三

可变字典使用举例: 设计一个学生类Student, 有这些属性:name(姓名).age(年龄).score(分数).(classNum)班级 (1)将如下学生添加到数组中 姓名年龄分数班级 Tom1782Class01 Jim2275Class01 Jerry3454Class01 Owen2298Class04 Steve1977Class05 (2)计算所有学生的平均分(年级的平均分) (3)计算各个班级的平均分 (4)用名字作为key, value是学生对象,将这些学生存入字典. mai

iosOC不可变字典和可变字典

//key 和 value 都属于(id)对象类型 //key常用字符串NSString来表示 //存储数值型 一般可用 NSString //int  age ->@(age) //  [dic[name] intValue]; //   @()-->转成NSNumber 类型 //     intValue //value可以使任意对象(NSString  NSArrray , dog  ) //NSDictionary 一旦创建不能修改增加删除 #pragma mark 字典的创建 NS

不可变字典 赋值 求字典里有多少对 获取字典里所有value值 获取所有考值

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { /*字典:NSDictionary 存储数据用的   和数组的区别:字典使用键值方式.无序的 2 相当于我们使用字典通过目录来查找具体字的解释 3 用key-value的形式数据,value作用用来存储数据,key用来检索数据 4 cocoa中的字典:可变/不可变 注意: 1.key通常是字符串对象,可以是