疯狂iOS学习笔记-字典

本文详细介绍了NSDictionary的基本操作,包括创建、获取、计数等方法,并展示了如何对字典的key进行排序和过滤。同时,文章还探讨了NSMutableDictionary的可变特性,如设置、添加、替换和删除键值对的操作。
摘要由CSDN通过智能技术生成

NSDictionary的功能和用法

NSDictionary集合由多组key-value组成,因此创建NSDictionary时需要同时指定多组key-value对。 NSDICTIONARY分别提供了类方法和实例方法创建NSDictionary。

  • dictionary:创建一个不包含任何key-value对的NSDictionary。
  • dictionaryWithContentsOfFile:/initWithContentsOfFile:读取指定文件的内容,使用指定文件内容来初始化NSDictionary。
  • dictionaryWithObject:forKey:使用单个key-value来创建NSDictionary对象
  • dictionaryWithObjects:forKeys:/initWithObjects:forKeys:使用两个NSArray分别指定Key,vakue集合,可以创建包含多组key-value对的NSDictionary。
  • dictionaryWithObjectsAndKeys:调用该方法时,需要按value1, key1, value2, key2, …nil的方式传入多个key-value对。

一旦得到NSDictionary对象,接下来就可以通过方法访问该集合所包含的 key或value。

  • count: 该方法返回NSDictionary所包含的key-value对的数量。
  • allKeys: 该方法返回该NSDictionary所包含的全部Key。
  • allKeyForObject: 该方法返回指定value对应的全部Key。
  • allValue: 该方法返回该NSDictionary所包含的全部value。
  • objectForKey: 该方法获取该NSDictionary中指定Key对应的value。
  • objectForKeyedSubScript: 通过该方法的支持,允许NSDictionary通过下标来获取指定key对应的value。
  • valueForKey: 该方法获取该NSDictionary中指定Key对应的value。
  • keyEnumerator: 该方法返回用于遍历该NSDicyoinary所有Key的NSEnumerator对象。
  • enumerateKeysAndObjectsUsingBlock: 使用指定的代码块来迭代执行该集合中所有的key-value对。
  • enumerateKeysAndObjectsWithOptions:usingBlock: 使用指定的代码块来迭代执行该集合中所有的key-value对。该方法可以传入一个NSEnumerationOptions参数。
  • writeToFile: 将NSDictionary对象的数据写入指定文件。

下面为NSDictionary扩展一个print类别。

#import <Foundation/Foundation.h>

@interface NSDictionary (print)

- (void) print;

@end

@implementation NSDictionary (print)

- (void) print {
   
    NSMutableString* result = [NSMutableString stringWithString:@"{"];
    for (id key in self) {
   
        [result appendString:[key description]];
        [result appendString:@"="];
        [result appendString:[self[key] d
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值