NSDictionary的创建

字典(Dictionary)是属于Foundation框架中三大基础框架之一, 创建起来和数组差不多, 但是和数组又有差异性, 创建数组的时候, 我们需要考虑元素的顺序, 而在字典中我们是不需要考虑元素的顺序.

字典里有一个叫做"键"(value), 一个叫做"值"(key).

比如我创建了一个@"One", @"1", 那么@"1"就是键, @"One"就是值.

涉及的方法:

initWithObjectsAndKeys: 这个方法的意思就是创建并且初始化一个字典里的键值对.

下面我们来看看例子:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        //我们在创建字典的时候, 不会强制性要求我们要按照顺序来创建.
        //它会自动帮我们排序.
        //在字典中, 我们是不需要考虑字典的顺序.
        NSDictionary *dicti = [[NSDictionary alloc]initWithObjectsAndKeys:@"One", @"1", @"Three", @"3",@"Two", @"2", nil];
        //字典中的元素是以键值对的形式存储的.
        //比如@"One" 和 @"1" 组成了一个键值对
        //@"One" 称为值 (value) @"1" 称为键 (key)
        //键值对的值和键, 都是任意的对象, 但是键往往都是使用字符串
        //字典存储地址没有顺序
        //数组讲究顺序, 字典可以快速找出某一个值, 值是我们的目的, 键是我们的手段
        
        NSLog(@"
dicti = %@", dicti);
        [dicti release];
    }
    return 0;
}

输出的结果:

2014-10-13 20:53:54.493 Dictionary[6603:303] 
dicti = {
    1 = One;
    2 = Two;
    3 = Three;
}
Program ended with exit code: 0

//由结果, 我们可以看出字典创建的时候是没有顺序的要求.