NSDictionary--字典

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

#import <Foundation/Foundation.h>
#import "NSArray+Log.h"

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

        //初始化一个字典
        //注意:字典里面所装数据类型:对象,不可以是基本数据类型
        //字典是无序的
        //key 通常是字符串, key必须唯一
        NSDictionary *dic = [[NSDictionary alloc] initWithObjectsAndKeys:
                             @"value",@"key",
                             @"value1",@"key1", nil];

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

        //创建一个数组
        NSArray *names = @[@"张三", @"李四", @"王五"];

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

        NSDictionary *dic2 = [NSDictionary dictionaryWithObjectsAndKeys:
                              @"v1",@"k1",
                              @"v2",@"k2",
                              @"v3",@"k3",
                              names,@"k4",nil];
        NSLog(@"dic2 is %@", dic2);

        //从字典中取出value,如果这个字典不存在这个key, 则返回null
        NSString *str = [dic2 objectForKey:@"k1"];
        NSLog(@"str is %@",str);
        NSArray *dArr = [dic2 objectForKey:@"k4"];
        NSLog(@"dArr is %@", dArr);
        NSString *str1 = [dic2 objectForKey:@"k5"];
        NSLog(@"str is %@",str1);

        //字典中键值对的个数
        NSUInteger count = [dic2 count];
        NSLog(@"count is %ld",count);

        //获取字典中所有的key
        NSArray *keys = [dic2 allKeys];
        NSLog(@"keys is %@",keys);

        //获取所有的Value
        NSArray *values = [dic2 allValues];
        NSLog(@"values is %@",values);

        //从字典中取出names的第一个元素
//        NSArray *arr = [dic2 objectForKey:@"k4"];
//        NSString *name1 = [arr objectAtIndex:0];
        //嵌套调用
        NSString *name1 = [[dic2 objectForKey:@"k4"] objectAtIndex:0];
        NSLog(@"name1 is %@", name1);

        //字典的快速创建和取值方法
        NSDictionary *dic3 = @{@"k1":@"v1",
                               @"k2":@"v2",
                               @"k3":@"v3"};
        id str2 = dic3[@"k1"];
        NSLog(@"str2 is %@",str2);

    }
    return 0;
}

时间: 2024-12-29 06:58:12

NSDictionary--字典的相关文章

【OC学习-19】NSDictionary字典对象的初始化以及常用操作方法归纳

字典主要特征是一对一对的key和value组成,它的分类以及针对元素的操作和NSString以及NSArray的都差不多.重点在于了解一遍,具体做项目时再加深理解. //不可变字典 //初始化字典,一般key值是字符串对象.空值用NSNull对象表示 NSDictionary *dic1=[NSDictionary dictionaryWithObjects:@"value1" forKeys:@"key1"]; NSDictionary *dic2=[NSDict

iOS NSDictionary 字典

//创建字典 NSDictionary *dic1 = [NSDictionary dictionaryWithObject:@"value" forKey:@"key"]; NSLog(@"dic1 :%@", dic1); 对于不可变NSDictionary *dic1 =@{@"value":@"key",@"value1":@"key1"}; //创建多个字典

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开发之旅-IOS常用数据结构NSArray、NSMutableArray、NSDictionary、NSMutableDictionary介绍

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

Swift字典类

在Foundation框架中提供一种字典集合,它是由"键-值"对构成的集合.键集合不能重复,值集合没有特殊要求.键和值集合中的元素可以是任何对象,但是不能是nil.Foundation框架字典类也分为NSDictionary不可变字典和NSMutableDictionary可变字典.一.NSDictionary类 NSDictionary有很多方法和属性,下面总结其常用的方法和属性. initWithDictionary: 构造器,通过Swift的Dictionary创建NSDicti

oc随笔六:字典

#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //NSDictionary字典对象,字典主要特征是一对一的key和value组成 //不可变字典 //初始化字典,一半key值是字符串对象,控制用NSNull对象表示 NSDictionary *dic1 = [NSDictionary dictionaryWithObject:@"velue1

1224字典dictionary

不可变词典NSDictionary 字典没有顺序可言,键值对 Key-Value 键(字符串对象)-值(对象) 0.字典里面多个键值对的值可以相同,但是键不能相同,必须唯一 1.字典存储的优势 a.方便查找 b.方便删改 2.如何创建一个字典 NSDictionary *dic = @{@"小王":xw,@"张三":zs,@"ls":ls}; NSDictionary *dic1 = [NSDictionary dictionary]; NSDi

NSDictionary、NSMutableDictionary的基本用法

郝萌主倾心贡献,尊重作者的劳动成果,请勿转载. 如果文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额随意,重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源码下载:点我传送 游戏官方下载:http://dwz.cn/RwTjl 游戏视频预览:http://dwz.cn/RzHHd 游戏开发博客:http://dwz.cn/RzJzI 游戏源码传送:http://dwz.cn/Nret1 1.不可变词典NSDictionary 字典初始化 NSNumber *numObj = [NS

Objective-C中字典类

字典是用于保存具有映射关系(key-value对)的数据集合.一个key-value对认为是一个条目(Entry),字典是存储key-value对的容器. 字典类的特点 与数组不同,字典靠key存取元素; key值不能重复,value必须是对象; 键值对在字典中是无序存储的. 字典分为不可变字典(NSDictionary)和可变字典(NSMutableDictionary). 不可变字典(NSDictionary) 字典一旦创建,键值对不可更改,不可添加, 不可删除. 仅能读取key或value

IOS Intro - NSDictionary and NSMutableDictionary

NSDictionary.NSMutableDictionary的基本用法 1.不可变词典NSDictionary 字典初始化 NSNumber *numObj = [NSNumber numberWithInt:100]; 以一个元素初始化 NSDictionary *dic = [NSDictionary dictionaryWithObject:numObj forKey:@"key"]; 初始化两个元素 NSDictionary *dic = [NSDictionary dic